forked from CGM_Public/pretix_original
* initial commit * API auth * Hierarchical URLs * Add session auth * Strong hierarchy * Add filters * Add i18n fields, questions * More viewsets and serializers * Ticket download * Add OrderPosition serializer * View-level permissions * More tests * More tests * Add basic API docs * Add REST API to docs frontpage * Tests for order endpoints * Add invoice tests * Voucher and waitinglist tests * Doc draft * order docs * Docs on all viewsets * Disable DRF docs, style sphinx, style browsable API * Fix tests * deprecated imports * Test foo * Attendee names * Fix migration problems * Remove browsable API, plugin integration * Doc fixes
188 lines
8.1 KiB
ReStructuredText
188 lines
8.1 KiB
ReStructuredText
Invoices
|
|
========
|
|
|
|
Resource description
|
|
--------------------
|
|
|
|
The invoice resource contains the following public fields:
|
|
|
|
.. rst-class:: rest-resource-table
|
|
|
|
===================================== ========================== =======================================================
|
|
Field Type Description
|
|
===================================== ========================== =======================================================
|
|
invoice_no string Invoice number (without prefix)
|
|
order string Order code of the order this invoice belongs to
|
|
is_cancellation boolean ``True``, if this invoice is the cancellation of a
|
|
different invoice.
|
|
invoice_from string Sender address
|
|
invoice_to string Receiver address
|
|
date date Invoice date
|
|
refers string Invoice number of an invoice this invoice refers to
|
|
(for example a cancellation refers to the invoice it
|
|
cancels) or ``null``.
|
|
locale string Invoice locale
|
|
introductory_text string Text to be printed above the product list
|
|
additional_text string Text to be printed below the product list
|
|
payment_provider_text string Text to be printed below the product list with
|
|
payment information
|
|
footer_text string Text to be printed in the page footer area
|
|
lines list of objects The actual invoice contents
|
|
├ description string Text representing the invoice line (e.g. product name)
|
|
├ gross_value money (string) Price including VAT
|
|
├ tax_value money (string) VAT amount
|
|
└ tax_rate decimal (string) Used VAT rate
|
|
===================================== ========================== =======================================================
|
|
|
|
|
|
Endpoints
|
|
---------
|
|
|
|
.. http:get:: /api/v1/organizers/(organizer)/events/(event)/invoices/
|
|
|
|
Returns a list of all invoices within a given event.
|
|
|
|
**Example request**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
GET /api/v1/organizers/bigevents/events/sampleconf/invoices/ HTTP/1.1
|
|
Host: pretix.eu
|
|
Accept: application/json, text/javascript
|
|
|
|
**Example response**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
HTTP/1.1 200 OK
|
|
Vary: Accept
|
|
Content-Type: text/javascript
|
|
|
|
{
|
|
"count": 1,
|
|
"next": null,
|
|
"previous": null,
|
|
"results": [
|
|
{
|
|
"invoice_no": "00001",
|
|
"order": "ABC12",
|
|
"is_cancellation": false,
|
|
"invoice_from": "Big Events LLC\nDemo street 12\nDemo town",
|
|
"invoice_to": "Sample company\nJohn Doe\nTest street 12\n12345 Testington\nTestikistan\nVAT ID: EU123456789",
|
|
"date": "2017-12-01",
|
|
"refers": null,
|
|
"locale": "en",
|
|
"introductory_text": "thank you for your purchase of the following items:",
|
|
"additional_text": "We are looking forward to see you on our conference!",
|
|
"payment_provider_text": "Please transfer the money to our account ABC…",
|
|
"footer_text": "Big Events LLC - Registration No. 123456 - VAT ID: EU0987654321",
|
|
"lines": [
|
|
{
|
|
"description": "Budget Ticket",
|
|
"gross_value": "23.00",
|
|
"tax_value": "0.00",
|
|
"tax_rate": "0.00"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
|
|
:query integer page: The page number in case of a multi-page result set, default is 1
|
|
:query boolean is_cancellation: If set to ``true`` or ``false``, only invoices with this value for the field
|
|
``is_cancellation`` will be returned.
|
|
:query string order: If set, only invoices belonging to the order with the given order code will be returned.
|
|
:query string refers: If set, only invoices refering to the given invoice will be returned.
|
|
:query string locale: If set, only invoices with the given locale will be returned.
|
|
:query string ordering: Manually set the ordering of results. Valid fields to be used are ``date`` and
|
|
``invoice_no``. Default: ``invoice_no``
|
|
:param organizer: The ``slug`` field of the organizer to fetch
|
|
:param event: The ``slug`` field of the event to fetch
|
|
:statuscode 200: no error
|
|
:statuscode 401: Authentication failure
|
|
:statuscode 403: The requested organizer/event does not exist **or** you have no permission to view this resource.
|
|
|
|
.. http:get:: /api/v1/organizers/(organizer)/events/(event)/invoices/(invoice_no)/
|
|
|
|
Returns information on one invoice, identified by its invoice number.
|
|
|
|
**Example request**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
GET /api/v1/organizers/bigevents/events/sampleconf/invoices/00001/ HTTP/1.1
|
|
Host: pretix.eu
|
|
Accept: application/json, text/javascript
|
|
|
|
**Example response**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
HTTP/1.1 200 OK
|
|
Vary: Accept
|
|
Content-Type: text/javascript
|
|
|
|
{
|
|
"invoice_no": "00001",
|
|
"order": "ABC12",
|
|
"is_cancellation": false,
|
|
"invoice_from": "Big Events LLC\nDemo street 12\nDemo town",
|
|
"invoice_to": "Sample company\nJohn Doe\nTest street 12\n12345 Testington\nTestikistan\nVAT ID: EU123456789",
|
|
"date": "2017-12-01",
|
|
"refers": null,
|
|
"locale": "en",
|
|
"introductory_text": "thank you for your purchase of the following items:",
|
|
"additional_text": "We are looking forward to see you on our conference!",
|
|
"payment_provider_text": "Please transfer the money to our account ABC…",
|
|
"footer_text": "Big Events LLC - Registration No. 123456 - VAT ID: EU0987654321",
|
|
"lines": [
|
|
{
|
|
"description": "Budget Ticket",
|
|
"gross_value": "23.00",
|
|
"tax_value": "0.00",
|
|
"tax_rate": "0.00"
|
|
}
|
|
]
|
|
}
|
|
|
|
:param organizer: The ``slug`` field of the organizer to fetch
|
|
:param event: The ``slug`` field of the event to fetch
|
|
:param invoice_no: The ``invoice_no`` field of the invoice to fetch
|
|
:statuscode 200: no error
|
|
:statuscode 401: Authentication failure
|
|
:statuscode 403: The requested organizer/event does not exist **or** you have no permission to view this resource.
|
|
|
|
.. http:get:: /api/v1/organizers/(organizer)/events/(event)/invoices/(invoice_no)/download/
|
|
|
|
Download an invoice in PDF format.
|
|
|
|
Note that in some cases the PDF file might not yet have been created. In that case, you will receive a status
|
|
code :http:statuscode:`409` and you are expected to retry the request after a short period of waiting.
|
|
|
|
**Example request**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
GET /api/v1/organizers/bigevents/events/sampleconf/invoices/00001/download/ HTTP/1.1
|
|
Host: pretix.eu
|
|
Accept: application/json, text/javascript
|
|
|
|
**Example response**:
|
|
|
|
.. sourcecode:: http
|
|
|
|
HTTP/1.1 200 OK
|
|
Vary: Accept
|
|
Content-Type: application/pdf
|
|
|
|
...
|
|
|
|
:param organizer: The ``slug`` field of the organizer to fetch
|
|
:param event: The ``slug`` field of the event to fetch
|
|
:param invoice_no: The ``invoice_no`` field of the invoice to fetch
|
|
:statuscode 200: no error
|
|
:statuscode 401: Authentication failure
|
|
:statuscode 403: The requested organizer/event does not exist **or** you have no permission to view this resource.
|
|
:statuscode 409: The file is not yet ready and will now be prepared. Retry the request after waiting vor a few
|
|
seconds.
|