vivenu invoices API
The invoices API from vivenu — 6 operation(s) for invoices.
The invoices API from vivenu — 6 operation(s) for invoices.
openapi: 3.0.3
info:
title: vivenu access-lists invoices API
description: vivenu API Documentation
version: 1.0.0
contact:
name: vivenu GmbH
url: https://vivenu.com
servers:
- url: https://vivenu.com
description: Production API
- url: https://vivenu.dev
description: Staging API
tags:
- name: invoices
paths:
/api/invoices:
get:
security:
- jwt: []
- apikey: []
parameters:
- name: top
required: false
schema:
type: number
format: float
description: A limit on the number of objects to be returned. Can range between 1 and 1000.
default: 25
metas: {}
in: query
style: form
explode: true
- name: skip
required: false
schema:
type: number
format: float
description: The number of objects to skip for the requested result
metas: {}
in: query
style: form
explode: true
- name: transactionId
required: false
schema:
type: string
description: The ID of the transaction the invoice was created for.
metas: {}
in: query
style: form
explode: true
- name: 'no'
required: false
schema:
type: string
description: The invoice number to filter for.
metas: {}
in: query
style: form
explode: true
- name: createdAt
required: false
schema:
type: object
properties:
$gt:
type: string
format: date-time
description: value is greater than
metas: {}
$gte:
type: string
format: date-time
description: value is greater than or equal
metas: {}
$lt:
type: string
format: date-time
description: value is less than
metas: {}
$lte:
type: string
format: date-time
description: value is less than or equal
metas: {}
$eq:
type: string
format: date-time
description: value is equal
metas: {}
$ne:
type: string
format: date-time
description: value is not equal
metas: {}
description: The range of dates indicating when the invoice was created in ISO format.
metas: {}
in: query
style: deepObject
explode: true
- name: type
required: false
schema:
type: array
items:
type: string
enum:
- invoice
- cancellation
metas: {}
description: The invoice type to filter for.
metas: {}
in: query
style: form
explode: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Invoices_GetAllInvoices_200_response'
'400':
description: Bad Request
'401':
description: Unauthorized
tags:
- invoices
description: Get All Invoices
operationId: get_all_invoices
post:
security:
- jwt: []
- apikey: []
parameters: []
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/POST_Invoices_CreateInvoiceForTransaction'
tags:
- invoices
description: Create Invoice for Transaction
operationId: create_invoice_for_transaction
/api/invoices/{id}:
get:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the invoice.
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
tags:
- invoices
description: Get an Invoice
operationId: get_an_invoice
put:
security:
- jwt: []
- apikey: []
parameters:
- name: id
required: true
schema:
type: string
description: The ID of the invoice.
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PUT_Invoices_UpdateAnInvoice'
tags:
- invoices
description: Update an Invoice
operationId: update_an_invoice
/api/invoices/trans/{transactionId}:
get:
security:
- jwt: []
parameters:
- name: transactionId
required: true
schema:
type: string
description: The ID of the transaction.
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
tags:
- invoices
description: Get Invoice for Transaction (deprecated - use GET /invoices with the transactionId query parameter instead)
deprecated: true
operationId: get_invoice_for_transaction_deprecated_use_get_invoices_with_the_transaction_id_query_parameter_instead
post:
security:
- jwt: []
parameters:
- name: transactionId
required: true
schema:
type: string
description: The ID of the transaction.
metas: {}
in: path
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/InvoiceResource'
'400':
description: Bad Request
'401':
description: Unauthorized
'404':
description: Not Found
tags:
- invoices
description: Create Invoice for Transaction (deprecated - use POST /invoices with query parameter transactionId instead)
deprecated: true
operationId: create_invoice_for_transaction_deprecated_use_post_invoices_with_query_parameter_transaction_id_instead
/api/public/invoices/info:
get:
parameters:
- name: transactionId
required: true
schema:
type: string
description: The ID of the transaction.
metas: {}
in: query
style: form
explode: true
- name: secret
required: true
schema:
type: string
minLength: 1
description: The secret of the transaction.
metas: {}
in: query
style: form
explode: true
- name: latest
required: false
schema:
type: boolean
metas: {}
in: query
style: form
explode: true
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Invoices_GetPublicInvoiceForTransaction_200_response'
'400':
description: Bad Request
'404':
description: Not Found
tags:
- invoices
description: Get Public Invoice for Transaction
operationId: get_public_invoice_for_transaction
/api/invoices/{transactionId}/info/{secret}:
get:
parameters:
- name: transactionId
required: true
schema:
type: string
description: The ID of the transaction.
metas: {}
in: path
- name: secret
required: true
schema:
type: string
description: The secret of the transaction.
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Invoices_GetPublicInvoiceForTransactionDeprecatedUseGetPublicInvoicesInfoWithQueryParametersTransactionIdAndSecretInstead_200_response'
'400':
description: Bad Request
'404':
description: Not Found
tags:
- invoices
description: Get Public Invoice for Transaction (deprecated - use GET /public/invoices/info with query parameters transactionId and secret instead)
deprecated: true
operationId: get_public_invoice_for_transaction_deprecated_use_get_public_invoices_info_with_query_parameters_transaction_id_and_secret_instead
/api/public/invoices/{id}/info:
get:
parameters:
- name: secret
required: true
schema:
type: string
minLength: 1
description: The secret of the invoice.
metas: {}
in: query
style: form
explode: true
- name: id
required: true
schema:
type: string
description: The ID of the invoice.
metas: {}
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/GET_Invoices_GetPublicInvoice_200_response'
'400':
description: Bad Request
'404':
description: Not Found
tags:
- invoices
description: Get Public Invoice
operationId: get_public_invoice
components:
schemas:
CustomerResource:
type: object
properties:
_id:
type: string
description: The ID of the customer
company:
type: string
nullable: true
description: The company of the customer
name:
type: string
nullable: true
description: The name of the customer collected from first name and last name
prename:
type: string
nullable: true
description: The first name of the customer
lastname:
type: string
nullable: true
description: The lastname of the customer
image:
type: string
nullable: true
description: The image of the customer
deprecated: true
primaryEmail:
type: string
format: email
description: The primary email of the customer
number:
type: number
format: float
description: The number of the customer. Need to be unique and incrementing
phone:
type: string
description: The phone number of the customer
location:
type: object
properties:
street:
type: string
nullable: true
description: The street of the location
line2:
type: string
nullable: true
description: The additional address fields of the location
postal:
type: string
nullable: true
description: The postal of the location
city:
type: string
nullable: true
description: The city of the location
locale:
type: string
nullable: true
description: The locale of the location
deprecated: true
state:
type: string
nullable: true
description: The state of the location
center:
type: array
items:
type: number
format: float
nullable: true
description: The center of the location
deprecated: true
country:
type: string
nullable: true
description: An ISO-3166-1 Alpha 2 country code of the location
description: The location of the customer
sellerId:
type: string
description: The ID of the seller of the customer
notes:
type: string
nullable: true
description: Notes of the customer
extraFields:
type: object
nullable: true
description: Extra fields of the customer
tags:
type: array
items:
type: string
description: An array of tags
segments:
type: array
items:
type: string
description: An array of segment slugs, read only
blocked:
type: boolean
description: Whether the customer is blocked
verified:
type: boolean
description: Whether the customer is verified
identification:
type: array
items:
$ref: '#/components/schemas/LegalIdentificationDocumentResource'
description: An array of identification items
_account:
type: object
properties:
verificationToken:
type: string
description: The verification token will be sent to the customer via email within a verification link, which can be used to verify the account of the customer
passwordResetToken:
type: string
description: The password reset token will be sent within a password reset link via email, which can be used by the customer to reset its password
limitations:
type: object
properties:
nextVerificationMailRequest:
type: string
format: date-time
description: An ISO timestamp indicating when the next verification mail request can be sent
description: Account specific limitations of the customer
loginType:
type: string
nullable: true
enum:
- password
- identityprovider
description: The login type of the customer.
description: Account specific information about the customer
meta:
type: object
description: Custom key-value data. Metadata is useful for storing additional, structured information on an object.
externalId:
type: string
nullable: true
description: An external identifier of the customer
createdAt:
type: string
format: date-time
description: An ISO timestamp indicating when the customer was created
updatedAt:
type: string
format: date-time
description: An ISO timestamp indicating when the customer was updated
required:
- _id
- primaryEmail
description: The associated customer which has been updated
GET_Invoices_GetPublicInvoice_200_response:
type: object
properties:
trans:
$ref: '#/components/schemas/TransactionResource'
invoice:
$ref: '#/components/schemas/InvoiceResource'
referenceInvoice:
$ref: '#/components/schemas/InvoiceResource'
seller:
type: object
properties:
_id:
type: string
description: The ID of the seller
image:
type: string
description: The seller image.
name:
type: string
description: The name of the seller
city:
type: string
documentSettings:
type: object
properties:
image:
type: string
invoice:
type: object
properties:
footerColumns:
type: array
items:
type: object
properties:
text:
type: string
active:
type: boolean
street:
type: string
postal:
type: string
locationName:
type: string
country:
type: string
taxRate:
type: number
format: float
default: 0.19
taxNo:
type: string
localTaxName:
type: string
required:
- _id
- name
customer:
$ref: '#/components/schemas/CustomerResource'
timezone:
type: string
default: Europe/Amsterdam
customPaymentMethod:
oneOf:
- type: array
- type: boolean
- type: number
- type: object
- type: string
required:
- timezone
POST_Invoices_CreateInvoiceForTransaction:
type: object
properties:
transactionId:
type: string
description: The ID of the transaction.
required:
- transactionId
TransactionResource:
type: object
properties:
_id:
type: string
description: The ID of the transaction
sellerId:
type: string
description: The ID of the seller of the transaction
customerId:
type: string
description: The ID of the customer of the transaction
eventId:
type: string
description: The ID of the event containing this transaction
company:
type: string
description: The company name of the user of the transaction
name:
type: string
description: The name of the user of the transaction
prename:
type: string
description: The firstname of the user of the transaction
lastname:
type: string
description: The lastname of the user of the transaction
email:
type: string
format: email
description: The email of the user of the transaction
street:
type: string
description: The street of the user of the transaction
line2:
type: string
description: The additional address field of the user of the transaction.
city:
type: string
description: The city of the user of the transaction
state:
type: string
description: The state of the user of the transaction
country:
type: string
description: The country of the user of the transaction
postal:
type: string
description: The postal of the user of the transaction
deliveryAddress:
type: object
properties:
fullAddress:
type: string
nullable: true
description: Optional full address
street:
type: string
nullable: true
description: The street of the address. Street name including number.
line2:
type: string
nullable: true
description: The additional field of the address.
postal:
type: string
nullable: true
description: The postal code of the address.
city:
type: string
nullable: true
description: The city of the address.
country:
type: string
nullable: true
description: The country of the address. An ISO 3166 country code.
state:
type: string
nullable: true
description: The state of the address. If applicable
name:
type: string
description: The name of the person receiving delivery.
description: The delivery address of the transaction
identification:
type: array
items:
$ref: '#/components/schemas/LegalIdentificationDocumentResource'
description: An array of identification items
tickets:
type: array
items:
type: object
properties:
type:
type: string
enum:
- ticket
description: The type of the cart item.
default: ticket
_id:
type: string
description: Unique identifier for the cart item. If omitted, the system will automatically generate one.
name:
type: string
nullable: true
description: The name of the cart item.
amount:
type: integer
minimum: 1
description: The amount of the cart item.
netPrice:
type: number
format: float
description: The single piece net price of the cart item.
price:
type: number
format: float
description: The single piece price of the cart item.
taxRate:
type: number
format: float
nullable: true
description: The tax rate to be applied to this cart item. If not present the tax rate of the transaction is taken.
triggeredBy:
oneOf:
- type: string
description: An ID of another cart item which triggered the buy action of the cart item.
- type: array
items:
type: string
description: An array of IDs of other cart items which triggered the buy action of the cart item.
nullable: true
description: An ID or an array of IDs of other cart items which triggered the buy action of the cart item.
bundleInfo:
type: object
properties:
bundleId:
type: string
componentId:
type: string
optionId:
type: string
nullable: true
ticketTypeId:
type: string
description: The ID of the ticket type of the cart item.
categoryRef:
type: string
description: The category reference of the ticket type.
seatingInfo:
type: object
properties:
_id:
type: string
description: The ID of the seating object.
_type:
type: number
format: float
enum:
- 6
- 7
description: Indicates the type of seating object. Seat = 6, General Admission = 7.
categoryId:
type: string
description: The ID of the category containing the seating object.
statusId:
type: string
description: The ID of a container holding information about the seating status of the seating object.
name:
type: string
nullable: true
description: If _type == 7. The name of the general admission.
seatType:
type: string
nullable: true
enum:
- handicapped
- limitedView
- foldable
description: If _type == 6. The type of the seat. null = normal.
sectionName:
type: string
nullable: true
description: If _type == 6. The name of the section where the seat is located.
groupName:
type: string
nullable: true
description: If _type == 6. The name of the row group where the seat is located.
rowName:
type: string
nullable: true
description: If _type == 6. The name of the row where the seat is located.
seatName:
type: string
nullable: true
description: If _type == 6. The seat name.
gate:
type: string
nullable: true
description: The entry gate associated with the seating object.
required:
- _type
- statusId
nullable: true
description: The associated seating object.
slotInfo:
type: object
properties:
slotId:
type: string
description: The ID of the time slot.
slotStartTime:
type: string
description: The start time of the time slot.
required:
- slotId
- slotStartTime
nullable: true
description: The associated time slot object.
asHardTicket:
type: boolean
nullable: true
description: Whether this ticket is a hard ticket.
listingId:
type: string
nullable: true
description: Listing in secondary market.
listingItemId:
type: string
nullable: true
description: The ID of the listing item in the secondary market.
triggeredAutomations:
type: boolean
nullable: true
description: Whether the cart item triggered automations.
meta:
type: object
nullable: true
description: Meta data which is propagated to the ticket.
addOns:
type: array
items:
type: object
properties:
productId:
type: string
productVariantId:
type: string
name:
type: string
required:
- productId
- productVariantId
- name
description: A list of Add-Ons of the ticket.
capabilities:
type: array
items:
oneOf:
- type: object
properties:
type:
type: string
enum:
- self_service_return
settings:
type: object
properties:
returnRelatedItems:
type: boolean
default: true
phases:
type: array
items:
type: object
properties:
condition:
type: object
properties:
target:
type: string
nullable: true
description: The target of the relative date
unit:
type: string
enum:
- hours
- days
- weeks
- months
- years
description: The unit in which the offset is specified
offset:
type: integer
description: The offset to the date
required:
- unit
- offset
refundPercentage:
type: number
format: float
minimum: 0
maximum: 1
required:
- condition
- refundPercentage
required:
- phases
required:
- type
- settings
- type: object
properties:
type:
type: string
enum:
- repersonalization
settings:
type: object
properties:
inherit:
type: boolean
repersonalizationDeadline:
type: object
properties:
target:
type: string
nullable: true
description: The target of the relative date
unit:
type: string
enum:
- hours
- days
- weeks
- months
- years
description: The unit in which the offset is specified
offset:
type: integer
description: The offset to the date
required:
- unit
- offset
repersonalizationsLimit:
type: number
format: float
nullable: true
repersonalizationFee:
type: number
format: float
nullable: true
limitOnlyNameChanges:
type: boolean
required:
- repersonalizationDeadline
required:
- type
- settings
nullable: true
description: The capabilities of the ticket.
taxInfo:
type: object
properties:
serviceTypeId:
type: string
description: The ID of the service type.
exc
# --- truncated at 32 KB (102 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vivenu/refs/heads/main/openapi/vivenu-invoices-api-openapi.yml