POST /debts

Registers a debt document.

Currently we support the following debt types (specified during creation through the attribute type):

curl -XPOST \
  --header "Content-Type: application/json" \
  --header "Authorization: Bearer 7b53d640bc79eb1c076603a5e65aa0d266623ced13525d8ea84e06eaf704a5b6" \
  https://api.invisiblecollector.com/debts  \
  --data '...'
require 'invisible_collector'

client = InvisibleCollector::API.new(api_token: '4a415cc660e67d8f4d26d5a7f390183a86fc3a4524ded78dc2448e86c48b2739')
debt = # new debt instance
client.debt.save(debt)
import com.ic.invisiblecollector.IcApiFacade;
import com.ic.invisiblecollector.model.Debt;

IcApiFacade apiFacade = new IcApiFacade("56a73507b66cd761caae7547ef2a66fc3a393746ba4bb9a91e303fcb3ceefb98");

Debt newDebt = new Debt();
... // set debt mandatory fields, including the debt id
Debt createdDebt = apiFacade.getDebtFacade().registerNewDebt(newDebt);
using InvisibleCollectorLib;
using InvisibleCollectorLib.Model;

var ic = new InvisibleCollector("56a73507b66cd761caae7547ef2a66fc3a393746ba4bb9a91e303fcb3ceefb98");
var newDebt = new Debt() {
  // set the fields, including the mandatory ones
}

//for example add item
newDebt.AddItem(new Item() {
  // set item
});

//for example add debt attribute
newDebt.SetAttribute("attribute-1", "value-1");

Debt createdDebt = await ic.SetNewDebtAsync(newDebt);

This request can receive, for example, the following JSON data:

{
  "number": "1",
  "customerId": "0d3987e3-a6df-422c-8722-3fde26eec9a8",
  "type": "FT",
  "status": "PENDING",
  "date": "2018-05-02",
  "dueDate": "2019-01-02",
  "netTotal": 1000.0,
  "tax": 200.0,
  "grossTotal": 1200.0,
  "currency": "EUR",
  "items": [
    {
      "name": "an item name",
      "description": "a debt item description",
      "quantity": 3.0,
      "vat": 23.0,
      "price": 15.0
    },
    {
      "name": "another item name",
      "description": "another debt item description",
      "quantity": 4.0,
      "vat": 23.0,
      "price": 20.0
    },
  ],
  "attributes": {
    "name_1": "attribute_1",
    "name_2": "attribute_2"
  }
}

This request will return, for example, the following JSON response:

{
  "number": "1",
  "id": "1fb0c683-bedc-45be-a88a-ff76da7bf650",
  "customerId": "0d3987e3-a6df-422c-8722-3fde26eec9a8",
  "type": "FT",
  "status": "PENDING",
  "date": "2018-05-02",
  "dueDate": "2019-01-02",
  "netTotal": 1000.0,
  "tax": 200.0,
  "grossTotal": 1200.0,
  "currency": "EUR",
  "items": [
    {
      "name": "an item name",
      "description": "a debt item description",
      "quantity": 3.0,
      "vat": 23.0,
      "price": 15.0
    },
    {
      "name": "another item name",
      "description": "another debt item description",
      "quantity": 4.0,
      "vat": 23.0,
      "price": 20.0
    },
  ],
  "attributes": {
    "name_1": "attribute_1",
    "name_2": "attribute_2"
  }
}

Endpoint

POST https://api.invisiblecollector.com/debts

Request body

A debt object contains the following attributes:

Debt

Attribute Type Mandatory Default Description
number string yes N/A The debt number
customerId string yes N/A The Invisible Collector’s generated id of the customer to whom this debt was issued to.
type string yes N/A The type of debt. Must be one of the previously mentioned types.
status string no PENDING The current status of this debt
date string yes N/A The date this debt was created. Must be in ISO 8601 format (YYYY-MM-DD)
dueDate string yes N/A The payment expiration date. Must be in ISO 8601 format (YYYY-MM-DD)
netTotal double no N/A This debt’s total net total
tax double no N/A The total amount being paid for tax purposes
grossTotal double no N/A The gross total of this debt
currency string no EUR The ISO 4217 currency code.
items array no N/A A list of item objects included in the transaction
attributes map no N/A A map of custom attributes related with this debt. Each attribute is a string-string key-value pair.

Item

Attribute Type Mandatory Default Description
name string yes N/A The name if the item
description string no N/A A human readable description of the item
quantity double no 0.0 The amount of items of this type included in the transaction
vat percentage no 0.0 The percentage being applied to this item for tax purposes
price double no 0.0 This item’s gross total

Response body

Debt

Attribute Type Description
number string The debt number
id string An unique identifier of this debt
customerId string The identification of the customer to whom this debt was issued to
type string The type of debt
status string The current status of this debt
date date The date this debt was created in ISO 8601 format (YYYY-MM-DD)
dueDate date The payment expiration date in ISO 8601 format (YYYY-MM-DD)
netTotal double This debt’s total net total
tax double The total amount being paid for tax purposes
grossTotal double The gross total of this debt
currency string The ISO 4217 currency code.
items array A list of items included in the transaction
attributes map A map of custom attributes related with this debt. Each attribute is a string-string key-value pair.

Item

Attribute Type Description
name string The name if the item
description string A human readable description of the item
quantity double The amount of items of this type included in the transaction
vat percentage The percentage being applied to this item for tax purposes
price double This item’s gross total

Errors

This endpoint may return the following errors:

HTTP Code Description
401 Unauthorized Invalid credentials were supplied
409 Conflict A debt with the same number already exists for this company
422 Unprocessable Entity The request is syntactically correct but not a valid debt JSON object or one the sanity checks failed