Alle Kunden auflisten

GET /api/clients
<?xml version="1.0" encoding="UTF-8"?>
<clients type="array" page="1" per_page="100" total="2">
    <client>
        ...
    </client>
    <client>
        ...
    </client>
</clients>

Über Parameter kann gefiltert werden:

GET /api/clients?name=gmbh

Listet alle Kunden auf, die „gmbh“ im Namen haben. Groß- und Kleinschreibung wird ignoriert.
Folgende Parameter stehen zur Verfügung:

ParameterBeschreibung
nameFirma/Bezeichnung des Kunden
client_numberKundennummer
emailE-Mail-Adresse
first_nameVorname Ansprechpartner
last_nameNachname Ansprechpartner
country_codeLändercode nach ISO 3166 Alpha-2
noteNotiz
invoice_idID einer Rechnung für diesen Kunden, mehrere Werte kommasepariert
tagsKommaseparierte Liste der Schlagworte

Eigene Account-Informationen aufrufen

GET /api/clients/myself

Wird als ID „myself“ übergeben, werden die Daten des eigenen Accounts ausgegeben.

Einzelnen Kunden aufrufen

GET /api/clients/{id}
<?xml version="1.0" encoding="UTF-8"?>
<client>
    <id type="integer">1</id>
    <created type="datetime">2007-12-13T12:12:00+01:00</created>
    <archived>0</archived>
    <client_number>KD123</client_number>
    <number type="integer">123</number>
    <number_pre>KD</number_pre>
    <number_length type="integer">0</number_length>
    <name>Musterfirma</name>
    <salutation>Herr</salutation>
    <first_name>Max</first_name>
    <last_name>Muster</last_name>
    <street>Musterstraße 123</street>
    <zip>12345</zip>
    <city>Musterstadt</city>
    <state>Bundesland</state>
    <country_code>DE</country_code>
    <address>Herr Max Muster
Musterstraße 123
12345 Musterstadt</address> <!-- read only -->
    <phone>+49 123456789</phone>
    <fax>+49 123456789</fax>
    <mobile>+49 123456789</mobile>
    <email>info@example.com</email>
    <www>www.example.com</www>
    <tax_number>12/3456/789</tax_number>
    <vat_number>DE123456789</vat_number>
    <bank_account_owner>Kontoinhaber</bank_account_owner>
    <bank_number>123456789</bank_number>
    <bank_name>Deutsche Bank</bank_name>
    <bank_account_number>123456789</bank_account_number>
    <bank_swift>SWIFT/BIC</bank_swift>
    <bank_iban>IBAN</bank_iban>
    <enable_customerportal>1</enable_customerportal>
    <customerportal_url>https://mybillomatid.billomat.net/customerportal/auth/autologin/entityId/123?hash=123456789aabbcc</customerportal_url>
    <sepa_mandate>MN123</sepa_mandate>
    <sepa_mandate_date>2013-12-10</sepa_mandate_date>
    <tax_rule>COUNTRY</tax_rule>
    <net_gross>SETTINGS</net_gross>
    <default_payment_types>CASH,PAPAL</default_payment_types>
    <reduction>10</reduction>
    <discount_rate_type>SETTINGS</discount_rate_type>
    <discount_rate>2</discount_rate>
    <discount_days_type>SETTINGS</discount_days_type>
    <discount_days>7</discount_days>
    <due_days_type>SETTINGS</due_days_type>
    <due_days>14</due_days>
    <reminder_due_days_type>RELATIVE</reminder_due_days_type>
    <reminder_due_days>-2</reminder_due_days>
    <offer_validity_days_type>ABSOLUTE</offer_validity_days_type>
    <offer_validity_days>30</offer_validity_days>
    <currency_code>CHF</currency_code>
    <price_group>2</price_group>
    <debitor_account_number>10000</debitor_account_number>
	<dunning_run>0</dunning_run>
    <note>Sehr netter Kunde</note>
    <revenue_gross type="float">119</revenue_gross> <!-- read only -->
    <revenue_net type="float">100</revenue_net> <!-- read only -->
</client>

Kunden erstellen

POST /api/clients
XML-ElementBeschreibungTypDefault-WertPflichtfeld
archivedArchivierungsstatus. Bei 1 ist der Kunde archiviert.BOOL0
number_prePräfixALNUMWert aus Einstellungen
numberlaufende NummerINTnächste freie Nummer
number_lengthMindestlänge der Kundennummer (wird mit führenden Nullen aufgefüllt)INTWert aus den Einstellungen
nameFirmennameALNUM
streetStraßeALNUM
zipPLZALNUM
cityOrtALNUM
stateBundesland, Bezirk, RegionALNUM
country_codeLandLändercode nach ISO 3166 Alpha-2Wert aus eigener Firma
first_nameVornameALNUM
last_nameNachnameALNUM
salutationAnredeALNUM
phoneTelefonALNUM
faxFaxALNUM
mobileMobiltelefon-NummerALNUM
emailE-Mailgültige E-Mail-Adresse
wwwWebsiteURL (ohne http)
tax_numberSteuernummerALNUM
vat_numberUst-IdNr.gültige Ust-IdNr.
bank_account_numberKontonummerALNUM
bank_account_ownerKontoinhaberALNUM
bank_numberBLZALNUM
bank_nameBanknameALNUM
bank_swiftSWIFT/BICALNUM
bank_ibanIBANgültige IBAN
sepa_mandateMandatsreferenz eines SEPA-LastschriftmandatsALNUM
sepa_mandate_dateAusstelldatum des SEPA-LastschriftmandatsDATE
localeGebietsschema des Kunden. Wird kein Wert übergeben, bedeutet das, dass beim Kunden das Gebietsschema des Accounts angewendet wird.ALNUM
tax_ruleSteuerregelTAX, NO_TAX, COUNTRYCOUNTRY
net_grossPreisbasis (netto, brutto, gemäß Account-Einstellung)NET, GROSS, SETTINGSSETTINGS
default_payment_typesZahlart (z.B. CASH, BANK_TRANSFER, PAYPAL, …). Mehrere Zahlarten können per Komma getrennt werden und werden ODER-Verknüpft. Eine Übersicht aller Zahlarten findet man bei der API-Dokumentation für Zahlungen. Wird kein Wert übergeben, bedeutet das, dass dem Kunde die Zahlarten angeboten werden, die bei den Account-Einstellungen hinterlegt sind.ALNUM
noteNotizALNUM
reductionRabatt in ProzentFLOAT
discount_rate_typeTyp des Standardwertes für Skonto-SatzSETTINGS, ABSOLUTE, RELATIVESETTINGS
discount_rateSkonto-SatzFLOAT
discount_days_typeTyp des Standardwertes für Skonto-ZeitraumSETTINGS, ABSOLUTE, RELATIVESETTINGS
discount_daysSkonto-Zeitraum in Tagen ab RechnungsdatumFLOAT
due_days_typeTyp des Standardwertes für FälligkeitSETTINGS, ABSOLUTE, RELATIVESETTINGS
due_daysFälligkeit in Tagen nach RechnungsdatumINT
reminder_due_days_typeTyp des Standardwertes für MahnungsfälligkeitSETTINGS, ABSOLUTE, RELATIVESETTINGS
reminder_due_daysMahnungsfälligkeitINT
offer_validity_days_typeTyp des Standardwertes für AngebotsgültigkeitSETTINGS, ABSOLUTE, RELATIVESETTINGS
offer_validity_daysGültigkeitsdauer für AngeboteINT
currency_codeWährung des Kunden. Ein leerer Wert bedeutet, dass die Account-Währung verwendet wird.ISO-Währungscode
price_groupPreisgruppe. Artikel können mehrere Preise haben. Die Preisgruppe legt fest, welcher Preis für den Kunden gilt.INT
debitor_account_numberDebitorennummerINT
dunning_runAutomatischer Mahnlauf?BOOL
<client>
    <name>Musterfirma</name>
    <salutation>Herr</salutation>
    <first_name>Max</first_name>
    <last_name>Muster</last_name>
    <street>Musterstraße 123</street>
    <zip>12345</zip>
    <city>Musterstadt</city>
    <state>Bundesland</state>
    <country_code>DE</country_code>
    <phone>+49 123456789</phone>
    <fax>+49 123456789</fax>
    <mobile>+49 123456789</mobile>
    <email>info@example.com</email>
    <www>www.example.com</www>
    <tax_number>12/3456/789</tax_number>
    <vat_number>DE123456789</vat_number>
    <bank_account_owner>Kontoinhaber</bank_account_owner>
    <bank_number>123456789</bank_number>
    <bank_name>Deutsche Bank</bank_name>
    <bank_account_number>123456789</bank_account_number>
    <bank_swift>SWIFT/BIC</bank_swift>
    <bank_iban>IBAN</bank_iban>
</client>
<?xml version="1.0" encoding="UTF-8"?>
<client>
    ...
</client>

Kunde bearbeiten

PUT /api/clients/{id}
<client>
    <name>Die super Musterfirma</name>
</client>
<?xml version="1.0" encoding="UTF-8"?>
<client>
    ...
</client>

Kunde löschen

DELETE /api/clients/{id}

Ist nur möglich, wenn keine Dokumente zu diesem Kunden existieren.

Kundenbild aufrufen

GET /api/clients/{id}/avatar?size={size}

Liefert das Kundenbild für den Kunden mit der übergebenen ID. Das Bild wird quadratisch zugeschnitten. Die Größe in Pixel kann über den Paramater size angegeben werden.