Skip to content

Prana API (1.0)

API Prana

Welcome !!! In our developer portal you will find everything you need to interact with our platform.

Our API works with the REST interface through the HTTPS protocol and using the JSON format for processing calls.

All requests are validated against an API Key that can be obtained manually from the Configuration section of the PRANA app.

Our goal is to offer the clearest possible documentation here.

Any suggestions can be sent to: info@prana.software

API Key

To use your API key, you need only call the api with your key in the header as follow:

X-Api-Key

Download OpenAPI description
Languages
Servers
https://api.prana.software

Stock Regularization

Manage your Stock Regularizations

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations

Stock Transfer

Manage your Stock Transfers

Operations
Operations

Warehouse Movement

Manage your warehouse movements

Operations
Operations
Operations

DeliveryNote

Manage your DeliveryNotes

Operations

Warehouse Accumulate

Manage your warehouse accumulates

Operations
Operations
Operations

Entity Last Update

Manage the last-updated timestamps for entities

Operations

Period

Retrieves the available accounting periods in the app

Operations
Operations
Operations

Purchase Invoice

Manage your Purchase Invoices

Operations
Operations
Operations

Payment Method

Manage your Payment Methods

Operations
Operations

Recurring Billing Templates

Manage your recurring billing templates

Operations
Operations

Billing Series

Manage your Billing Series

Operations

Request

Get a specific billing series.

Path
idinteger(int32)required
curl -i -X GET \
  'https://api.prana.software/api/v1/billing-series/{id}'

Responses

OK

Bodyapplication/json
idinteger(int32)required

Unique identifier of the entity

Example: 1
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestringrequired

Billing series code.

Example: "SER2025"
descriptionstring

Description of the billing series.

Example: "Main invoice series"
cifstring

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountobject(ApiChartAccountListReadDto)

Purchase account details. See ApiChartAccountListReadDto.

observationsstring

Additional observations.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesobject(ApiBillingSeriesReadDto)Recursive

Reference to the corrective billing series. See ApiBillingSeriesReadDto.

lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 1900
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
Response
application/json
{ "id": 1, "type": "SALE", "code": "SER2025", "description": "Main invoice series", "cif": "B42512345", "purchaseAccount": { "id": 1, "code": 1000, "description": "Cash account", "cif": "B12345678", "active": true, "color": "#FF5733", "parentCode": 100, "parentDescription": "Assets" }, "observations": "Used for export invoices", "deposit": false, "corrective": true, "correctiveBillingSeries": {}, "lastInvoiceNumber": 1900, "omitSeriesOnSendToSii": true, "otherSIF": false }

Request

Update a specific billing series.

Path
idinteger(int32)required
Bodyapplication/jsonrequired
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestring[ 0 .. 5 ] charactersrequired

Billing series code.

Example: "SER25"
descriptionstring[ 0 .. 50 ] charactersrequired

Description of the billing series.

Example: "Export invoice series"
cifstring[ 0 .. 20 ] characters

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountinteger(int32)

Purchase account identifier.

Example: 400865
observationsstring

Additional observations about the billing series.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesinteger(int32)

Associated corrective billing series identifier.

Example: 7
lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 2000
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
curl -i -X PUT \
  'https://api.prana.software/api/v1/billing-series/{id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "SALE",
    "code": "SER25",
    "description": "Export invoice series",
    "cif": "B42512345",
    "purchaseAccount": 400865,
    "observations": "Used for export invoices",
    "deposit": false,
    "corrective": true,
    "correctiveBillingSeries": 7,
    "lastInvoiceNumber": 2000,
    "omitSeriesOnSendToSii": true,
    "otherSIF": false
  }'

Responses

OK

Bodyapplication/json
idinteger(int32)required

Unique identifier of the entity

Example: 1
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestringrequired

Billing series code.

Example: "SER2025"
descriptionstring

Description of the billing series.

Example: "Main invoice series"
cifstring

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountobject(ApiChartAccountListReadDto)

Purchase account details. See ApiChartAccountListReadDto.

observationsstring

Additional observations.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesobject(ApiBillingSeriesReadDto)Recursive

Reference to the corrective billing series. See ApiBillingSeriesReadDto.

lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 1900
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
Response
application/json
{ "id": 1, "type": "SALE", "code": "SER2025", "description": "Main invoice series", "cif": "B42512345", "purchaseAccount": { "id": 1, "code": 1000, "description": "Cash account", "cif": "B12345678", "active": true, "color": "#FF5733", "parentCode": 100, "parentDescription": "Assets" }, "observations": "Used for export invoices", "deposit": false, "corrective": true, "correctiveBillingSeries": {}, "lastInvoiceNumber": 1900, "omitSeriesOnSendToSii": true, "otherSIF": false }

Request

Delete specific billing series.

Path
idinteger(int32)required
curl -i -X DELETE \
  'https://api.prana.software/api/v1/billing-series/{id}'

Responses

OK

Request

Patch Billing Series.

Path
idinteger(int32)required
Bodyapplication/jsonrequired
property name*objectadditional property
curl -i -X PATCH \
  'https://api.prana.software/api/v1/billing-series/{id}' \
  -H 'Content-Type: application/json' \
  -d '{
    "property1": {},
    "property2": {}
  }'

Responses

OK

Bodyapplication/json
idinteger(int32)required

Unique identifier of the entity

Example: 1
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestringrequired

Billing series code.

Example: "SER2025"
descriptionstring

Description of the billing series.

Example: "Main invoice series"
cifstring

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountobject(ApiChartAccountListReadDto)

Purchase account details. See ApiChartAccountListReadDto.

observationsstring

Additional observations.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesobject(ApiBillingSeriesReadDto)Recursive

Reference to the corrective billing series. See ApiBillingSeriesReadDto.

lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 1900
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
Response
application/json
{ "id": 1, "type": "SALE", "code": "SER2025", "description": "Main invoice series", "cif": "B42512345", "purchaseAccount": { "id": 1, "code": 1000, "description": "Cash account", "cif": "B12345678", "active": true, "color": "#FF5733", "parentCode": 100, "parentDescription": "Assets" }, "observations": "Used for export invoices", "deposit": false, "corrective": true, "correctiveBillingSeries": {}, "lastInvoiceNumber": 1900, "omitSeriesOnSendToSii": true, "otherSIF": false }

Request

Create a new billing series.

Bodyapplication/jsonrequired
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestring[ 0 .. 5 ] charactersrequired

Billing series code.

Example: "SER25"
descriptionstring[ 0 .. 50 ] charactersrequired

Description of the billing series.

Example: "Export invoice series"
cifstring[ 0 .. 20 ] characters

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountinteger(int32)

Purchase account identifier.

Example: 400865
observationsstring

Additional observations about the billing series.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesinteger(int32)

Associated corrective billing series identifier.

Example: 7
lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 2000
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
curl -i -X POST \
  https://api.prana.software/api/v1/billing-series \
  -H 'Content-Type: application/json' \
  -d '{
    "type": "SALE",
    "code": "SER25",
    "description": "Export invoice series",
    "cif": "B42512345",
    "purchaseAccount": 400865,
    "observations": "Used for export invoices",
    "deposit": false,
    "corrective": true,
    "correctiveBillingSeries": 7,
    "lastInvoiceNumber": 2000,
    "omitSeriesOnSendToSii": true,
    "otherSIF": false
  }'

Responses

OK

Bodyapplication/json
idinteger(int32)required

Unique identifier of the entity

Example: 1
typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
codestringrequired

Billing series code.

Example: "SER2025"
descriptionstring

Description of the billing series.

Example: "Main invoice series"
cifstring

Tax Identification Code (CIF) for the billing series.

Example: "B42512345"
purchaseAccountobject(ApiChartAccountListReadDto)

Purchase account details. See ApiChartAccountListReadDto.

observationsstring

Additional observations.

Example: "Used for export invoices"
depositboolean

Indicates if the series is a deposit.

Example: false
correctiveboolean

Indicates if the series is corrective.

Example: true
correctiveBillingSeriesobject(ApiBillingSeriesReadDto)Recursive

Reference to the corrective billing series. See ApiBillingSeriesReadDto.

lastInvoiceNumberinteger

Last invoice number issued in the series.

Example: 1900
omitSeriesOnSendToSiiboolean

Indicates if the series should be omitted when sending invoices to SII.

Example: true
otherSIFboolean

Indicates if this series is for other SIF.

Example: false
Response
application/json
{ "id": 1, "type": "SALE", "code": "SER2025", "description": "Main invoice series", "cif": "B42512345", "purchaseAccount": { "id": 1, "code": 1000, "description": "Cash account", "cif": "B12345678", "active": true, "color": "#FF5733", "parentCode": 100, "parentDescription": "Assets" }, "observations": "Used for export invoices", "deposit": false, "corrective": true, "correctiveBillingSeries": {}, "lastInvoiceNumber": 1900, "omitSeriesOnSendToSii": true, "otherSIF": false }

Request

Get all your billing series.

Bodyapplication/jsonrequired
conditionobject(ApiCondition)

Condition to filter results

sortCriteriaArray of objects(ApiSortDto)

List of sorting criteria to apply

pageNumberinteger(int32)required

Page number to retrieve (0-based)

Example: 0
pageSizeinteger(int32)required

Number of items per page

Example: 20
curl -i -X POST \
  https://api.prana.software/api/v1/billing-series/search \
  -H 'Content-Type: application/json' \
  -d '{
    "condition": {
      "field": "name",
      "value": "Example Value",
      "type": "EQ",
      "endValue": 100,
      "innerConditions": [
        {}
      ],
      "conditionType": "AND",
      "empty": false,
      "compareFields": false
    },
    "sortCriteria": [
      {
        "sortField": "name",
        "sortDirection": "ASC"
      }
    ],
    "pageNumber": 0,
    "pageSize": 20
  }'

Responses

OK

Bodyapplication/json
dataArray of objects(ApiBillingSeriesListReadDto)required

List of data items for the current page

data[].​idinteger(int32)required

Unique identifier of the entity

Example: 1
data[].​typestring(ApiBillingSeriesDocumentTypeEnum)required

Type of the billing series. See ApiBillingSeriesTypeEnum for possible values.

Enum"PURCHASE""PURCHASE_TICKET""SALE""SALE_TICKET""INVOICE_DRAFT"
Example: "INVOICE"
data[].​codestringrequired

Billing series code.

Example: "SER2025"
data[].​descriptionstring

Description of the billing series.

Example: "Main invoice series"
data[].​depositboolean

Indicates if this is the default series.

Example: true
data[].​correctiveboolean

Indicates if this is a corrective series.

Example: false
data[].​otherSIFboolean

Indicates if this series is for other SIF.

Example: false
pageinteger(int32)required

Current page number (0-based)

Example: 0
totalinteger(int32)required

Total number of items across all pages

Example: 150
pagesinteger(int64)required

Last page number (0-based)

Example: 14
sizeinteger(int32)required

Number of items per page

Example: 10
Response
application/json
{ "data": [ { … } ], "page": 0, "total": 150, "pages": 14, "size": 10 }
Operations
Operations

PurchaseDeliveryNote

Manage your PurchaseDeliveryNotes

Operations
Operations
Operations