Skip to content

invoicetronic/javascript-sdk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JavaScript SDK for the Invoicetronic API

The Invoicetronic API is a RESTful service that allows you to send and receive invoices through the Italian Servizio di Interscambio (SDI), or Interchange Service. The API is designed to be simple and easy to use, abstracting away SDI complexity while providing complete control over the invoice send/receive process. It provides advanced features as encryption at rest, multi-language pre-flight invoice validation, multiple upload formats, webhooks, event logging, client SDKs, and CLI tools.

For more information, see Invoicetronic website

This SDK is automatically generated by the OpenAPI Generator project:

  • API version: 1
  • Package version: 1.0.1
  • Generator version: 7.14.0
  • Build package: org.openapitools.codegen.languages.JavascriptClientCodegen For more information, please visit https://invoicetronic.com

Installation

npm

To publish the library as a npm, please follow the procedure in "Publishing npm packages".

Then install it via:

npm install @invoicetronic/js-sdk --save

Finally, you need to build the module:

npm run build
Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing into the directory containing package.json (and this README). Let's call this JAVASCRIPT_CLIENT_DIR. Then run:

npm install

Next, link it globally in npm with the following, also from JAVASCRIPT_CLIENT_DIR:

npm link

To use the link you just defined in your project, switch to the directory you want to use your @invoicetronic/js-sdk from, and run:

npm link /path/to/<JAVASCRIPT_CLIENT_DIR>

Finally, you need to build the module:

npm run build

git

If the library is hosted at a git repository, e.g.https://github.com/invoicetronic/javascript-sdk then install it via:

    npm install invoicetronic/javascript-sdk --save

For browser

The library also works in the browser environment via npm and browserify. After following the above steps with Node.js and installing browserify with npm install -g browserify, perform the following (assuming main.js is your entry file):

browserify main.js > bundle.js

Then include bundle.js in the HTML pages.

Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error: Cannot resolve module", most certainly you should disable AMD loader. Add/merge the following section to your webpack config:

module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}

Getting Started

Please follow the installation instruction and execute the following JS code:

var invoicetronicSdk = require('@invoicetronic/js-sdk');

var defaultClient = invoicetronicSdk.ApiClient.instance;
// Configure HTTP basic authorization: Basic
var Basic = defaultClient.authentications['Basic'];
Basic.username = 'YOUR USERNAME'
Basic.password = 'YOUR PASSWORD'

var api = new invoicetronicSdk.CompanyApi()
var opts = {
  'page': 1, // {Number} Page number.
  'pageSize': 100, // {Number} Items per page. Cannot be greater than 200.
  'sort': "sort_example" // {String} Sort by field. Prefix with '-' for descending order.
};
api.companyGet(opts).then(function(data) {
  console.log('API called successfully. Returned data: ' + data);
}, function(error) {
  console.error(error);
});

Documentation for API Endpoints

All URIs are relative to http://localhost

Class Method HTTP request Description
invoicetronicSdk.CompanyApi companyGet GET /company List companies
invoicetronicSdk.CompanyApi companyIdDelete DELETE /company/{id} Delete a company
invoicetronicSdk.CompanyApi companyIdGet GET /company/{id} Get a company by id
invoicetronicSdk.CompanyApi companyPost POST /company Add a company
invoicetronicSdk.CompanyApi companyPut PUT /company Update a company
invoicetronicSdk.LogApi logGet GET /log List events
invoicetronicSdk.LogApi logIdGet GET /log/{id} Get an event by id
invoicetronicSdk.ReceiveApi receiveGet GET /receive List incoming invoices
invoicetronicSdk.ReceiveApi receiveIdDelete DELETE /receive/{id} Delete an incoming invoice by id
invoicetronicSdk.ReceiveApi receiveIdGet GET /receive/{id} Get an incoming invoice by id
invoicetronicSdk.SendApi sendFilePost POST /send/file Add an invoice by file
invoicetronicSdk.SendApi sendGet GET /send List invoices
invoicetronicSdk.SendApi sendIdGet GET /send/{id} Get a invoice by id
invoicetronicSdk.SendApi sendIdentifierGet GET /send/{identifier} Get a invoice by identifier
invoicetronicSdk.SendApi sendJsonPost POST /send/json Add an invoice by json
invoicetronicSdk.SendApi sendPost POST /send Add an invoice
invoicetronicSdk.SendApi sendValidateFilePost POST /send/validate/file Validate an invoice file
invoicetronicSdk.SendApi sendValidateJsonPost POST /send/validate/json Validate an invoice by json
invoicetronicSdk.SendApi sendValidatePost POST /send/validate Validate an invoice
invoicetronicSdk.SendApi sendValidateXmlPost POST /send/validate/xml Validate an invoice by xml
invoicetronicSdk.SendApi sendXmlPost POST /send/xml Add an invoice by xml
invoicetronicSdk.StatusApi statusGet GET /status Account status
invoicetronicSdk.UpdateApi updateGet GET /update List updates
invoicetronicSdk.UpdateApi updateIdGet GET /update/{id} Get an update by id
invoicetronicSdk.WebhookApi webhookGet GET /webhook List webhooks
invoicetronicSdk.WebhookApi webhookIdDelete DELETE /webhook/{id} Delete a webhook by id
invoicetronicSdk.WebhookApi webhookIdGet GET /webhook/{id} Get a webhook by id
invoicetronicSdk.WebhookApi webhookPost POST /webhook Add a webhook
invoicetronicSdk.WebhookApi webhookPut PUT /webhook Update a webhook
invoicetronicSdk.WebhookApi webhookhistoryGet GET /webhookhistory List webhook history items
invoicetronicSdk.WebhookApi webhookhistoryIdGet GET /webhookhistory/{id} Get a webhook history item by id

Documentation for Models

Documentation for Authorization

Authentication schemes defined for the API:

Basic

  • Type: HTTP basic authentication

Packages

No packages published