API-V2

Application Programming Interface

InvoiceXpress Documentation

Register

PUT /sequences/:sequence-id/register.json

Registers an existing sequence.

Example Request

curl

curl --request PUT \
  --url 'https://account_name.app.invoicexpress.com/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE' \
  --header 'accept: application/json'

Ruby

require 'uri'
require 'net/http'

url = URI("https://account_name.app.invoicexpress.com/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE

request = Net::HTTP::PUT.new(url)
request["accept"] = 'application/json'

response = http.request(request)
puts response.read_body

Node

var http = require("https");

var options = {
  "method": "PUT",
  "hostname": "account_name.app.invoicexpress.com",
  "port": null,
  "path": "/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE",
  "headers": {
    "accept": "application/json"
  }
};

var req = http.request(options, function (res) {
  var chunks = [];

  res.on("data", function (chunk) {
    chunks.push(chunk);
  });

  res.on("end", function () {
    var body = Buffer.concat(chunks);
    console.log(body.toString());
  });
});

req.end();

Python

import http.client

conn = http.client.HTTPSConnection("account_name.app.invoicexpress.com")

headers = { 'accept': "application/json" }

conn.request("PUT", "/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE", headers=headers)

res = conn.getresponse()
data = res.read()

print(data.decode("utf-8"))

PHP

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "https://account_name.app.invoicexpress.com/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "PUT",
  CURLOPT_HTTPHEADER => array(
    "accept: application/json"
  ),
));

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}

Go

package main

import (
    "fmt"
    "net/http"
    "io/ioutil"
)

func main() {

    url := "https://account_name.app.invoicexpress.com/sequences/:sequence-id/register.json?api_key=YOUR%20API%20KEY%20HERE"

    req, _ := http.NewRequest("PUT", url, nil)

    req.Header.Add("accept", "application/json")

    res, _ := http.DefaultClient.Do(req)

    defer res.Body.Close()
    body, _ := ioutil.ReadAll(res.Body)

    fmt.Println(res)
    fmt.Println(string(body))

}

Responses

200OK
Sequences were registered successfully.
The response will contain the registered sequence.
401ACCESS DENIED
The API Key parameter is missing or is incorrectly entered.
(Empty Response)
404NOT FOUND
The supplied :sequence_id doesn’t match any existing sequence.
{ "code": "006", "message": "The sequence doesn't exist." }
409CONFLICT
The sequences are in a conflicting state.
The sequence is already registered.

{ "code": "005", "message": "All sequences are registered." }

Available codes:
005: All sequences are registered.
008: The sequence is already being registered.
422UNPROCESSABLE ENTITY
Some parameters were incorrect.
Problems with the sequence name or Tax Authority credentials.

{ "code": "001", "message": "Sequence name not allowed." }

Available codes:
001: Sequence name not allowed.
002: Invalid Tax Authority credentials.
003: Account fiscal ID doesn’t have open activity in Tax Authority.
004: Account is not portuguese.
007: All Sequences are registered in AT.
000: Unknown error.

Example Success Body Response

{
  "sequences": [
    {
      "id": 146090,
      "serie": "2022",
      "default_sequence": 1,
      "current_invoice_number": 0,
      "current_invoice_sequence_id": 146090,
      "current_invoice_validation_code": "ABCD1230",
      "current_invoice_receipt_number": 0,
      "current_invoice_receipt_sequence_id": 146092,
      "current_invoice_receipt_validation_code": "ABCD1231",
      "current_simplified_invoice_number": 0,
      "current_simplified_invoice_sequence_id": 146091,
      "current_simplified_invoice_validation_code": "ABCD1232",
      "current_credit_note_number": 0,
      "current_credit_note_sequence_id": 146095,
      "current_credit_note_validation_code": "ABCD1233",
      "current_debit_note_number": 0,
      "current_debit_note_sequence_id": 146094,
      "current_debit_note_validation_code": "ABCD1234",
      "current_receipt_number": 0,
      "current_receipt_sequence_id": 146093,
      "current_receipt_validation_code": "ABCD1235",
      "current_shipping_number": 0,
      "current_shipping_sequence_id": 146104,
      "current_shipping_validation_code": "ABCD1236",
      "current_transport_number": 0,
      "current_transport_sequence_id": 146106,
      "current_transport_validation_code": "ABCD1237",
      "current_devolution_number": 0,
      "current_devolution_sequence_id": 146105,
      "current_devolution_validation_code": "ABCD1238",
      "current_proforma_number": 0,
      "current_proforma_sequence_id": 146102,
      "current_proforma_validation_code": "ABCD1239",
      "current_quote_number": 0,
      "current_quote_sequence_id": 146101,
      "current_quote_validation_code": "ABCD1240",
      "current_fees_note_number": 0,
      "current_fees_note_sequence_id": 146103,
      "current_fees_note_validation_code": "N/A",
      "current_vat_moss_invoice_number": 0,
      "current_vat_moss_invoice_sequence_id": 146097,
      "current_vat_moss_invoice_validation_code": "N/A",
      "current_vat_moss_credit_note_number": 0,
      "current_vat_moss_credit_note_sequence_id": 146098,
      "current_vat_moss_credit_note_validation_code": "N/A",
      "current_vat_moss_receipt_number": 0,
      "current_vat_moss_receipt_sequence_id": 146099
      "current_vat_moss_receipt_validation_code": "N/A"
    }
  ]
}

Possible values for fields current_<document type>_validation_code:

  • ABCD1234 or similar: validation code for each sequence that is registered in the Tax Authority.
  • N/D: The sequence is relevant for ATCUD but is not registered in the Tax Authority.
  • N/A: The sequence is not relevant for ATCUD and is not registered in the Tax Authority.