Emiterea, marcarea ca plătită sau anularea unei facturi

Emiterea unei facturi

Această funcționalitate îți permite să emiți o factură în sistem printr-un request de tip POST.

Formatul de date așteptat este sub formă de JSON.

Este necesară autentificarea, de exemplu:

$ curl -XPOST https://SystemId:APIKey@r3.minicrm.hu/Api/Invoice/ -d '{
    "Type": "Invoice",
    "CustomerId": 98,
    "Customer": {
        "Name": "Teszt User",
        "Country": "Magyarország",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Teszt utca 1.",
        "AccountNumber": "12345678-12345678-12345678",
        "VatNumber": "12345678-12-1"
    },
    "PaymentMethod": "Cash",
    "Issued": "2013-11-27",
    "Performance": "2013-11-27",
    "Prompt": "2013-11-30",
    "CurrencyCode": "HUF",
    "IsReverseCharge": "0",
    "Items": [
        {
            "Name": "Példa tétel",
            "PriceNet": "1 000,00",
            "VAT": "27%",
            "Quantity": "2",
            "Unit": "darab"
        }
    ]
}'

Este necesar să fie specificat CustomerId sau ReferenceId.

CustomerId: Id-ul contactului din sistem.

ReferenceId: Id extern al cardului creat de către SyncFeed.

Adresa de facturare va fi utilizată pentru factură. Dacă o adresă de acest tip nu există, va fi folosită adresa implicită a contactului.

Dacă doriți ca factura să fie emisă pe o persoană din companie trebuie să aveți „ForcesInvoiceOnPerson”: „1”

Utilizarea detaliilor pentru client este opțională. În acesta poți insera detaliile cumpărătorului. Dacă acel contact are deja o adresă setată, aceasta va fi folosită pentru factură. Dacă nu, va fi înregistrată o nouă adresă de facturare.

IMPORTANT! În acest caz, câmpurile legate de Numărul de înregistrare la Registrul Comerțului, TVA și/sau detaliile bancare vor fi rescrise de către API.

Exemplu:

{
    "Id": "13",
    "Number": "2013-E/00015",
    "Type": "Invoice",
    "Media": "PKI",
    "Customer": {
        "Name": "Teszt User",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Teszt utca 1.",
        "AccountNumber": "12345678-12345678-12345678",
        "VatNumber": "12345678-12-1"
    },
    "Vendor": {
        "Name": "Invoice Zrt.",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Petőfi u. 8.",
        "AccountNumber": "87654321-87654321-87654321",
        "VatNumber": "87654321-02-3",
        "RegistrationNumber": "",
        "Miscellaneous": ""
    },
    "Subject": "",
    "PaymentMethod": "Cash",
    "Issued": "2013-11-27",
    "Performance": "2013-11-27",
    "Prompt": "2013-11-30",
    "Paid": "0000-00-00",
    "CurrencyCode": "HUF",
    "AmountNet": "2000.00",
    "AmountVat": "540.00",
    "Amount": "2540.00",
    "IsReverseCharge": "0",
    "DocumentId": "66",
    "DocumentUrl": "https://d1hj6taljsfeus.cloudfront.net/doc/2013/11-27/7/m/7mgnkSkFG3YwHGcus2YEcg-50",
    "DocumentFileName": "szamla-50-2013-e-00015-1.pdf",
    "Items": [
        {
            "Name": "Példa tétel",
            "Description": "",
            "PriceNet": "1 000,00",
            "VAT": "27%",
            "Quantity": "2",
            "Unit": "darab",
            "PriceNetTotal": "2 000,00",
            "PriceTotal": "2 540,00"
        }
    ]
}

Marcarea unei facturi ca fiind plătită

Funcționalitatea setează statusul unei facturi ca Plătit (marchează factura ca achitată). Aceasta poate fi accesată prin-un request de tip POST și este necesară autentificarea:

$ curl -XPOST https://SystemId:APIKey@r3.minicrm.hu/Api/Invoice/16/Paid -d '{
    "Customer": {
        "Name": "Teszt User",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Teszt utca 1.",
        "AccountNumber": "12345678-12345678-12345678",
        "VatNumber": "12345678-12-1"
    },
}'

Și în acest caz poate fi folosit un array care să conțină datele clientului mai ales dacă, între timp, anumite informații s-au schimbat.

Dacă se marchează ca și plătită o factură prin API, răspunsul va include detaliile de pe cardul facturii.

Exemplu de răspuns:

{
    "Id": "17",
    "Number": "2013-E/00016",
    "Type": "Invoice",
    "Media": "PKI",
    "Customer": {
        "Name": "Teszt User",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Teszt utca 1.",
        "AccountNumber": "12345678-12345678-12345678",
        "VatNumber": "12345678-12-1"
    },
    "Vendor": {
        "Name": "Invoice Zrt.",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Petőfi u. 8.",
        "AccountNumber": "87654321-87654321-87654321",
        "VatNumber": "87654321-02-3",
        "RegistrationNumber": "",
        "Miscellaneous": ""
    },
    "Subject": "DK2013-E/00002 számú díjbekérő alapján készült.",
    "PaymentMethod": "Cash",
    "Issued": "2013-11-27",
    "Performance": "2013-11-27",
    "Prompt": "2013-11-27",
    "Paid": "2013-11-27",
    "CurrencyCode": "HUF",
    "AmountNet": "12000.00",
    "AmountVat": "3240.00",
    "Amount": "15240.00",
    "IsReverseCharge": "0",
    "DocumentId": "68",
    "DocumentUrl": "https://d1hj6taljsfeus.cloudfront.net/doc/2013/11-27/g/o/go9SWT-_mUVFKQD2-m5-5w-50",
    "DocumentFileName": "szamla-50-2013-e-00016-1.pdf",
    "Items": [
        {
            "Name": "Teszt cikk 1",
            "Description": "",
            "PriceNet": "12 000,00",
            "VAT": "27%",
            "Quantity": "1",
            "Unit": "darab",
            "PriceNetTotal": "12 000,00",
            "PriceTotal": "15 240,00"
        }
    ]
}

Stornarea unei facturi

Această funcționalitate te ajută să stornezi o factură emisă. Aceasta poate fi accesată print-un request de tip POT și necesită autentificarea:

$ curl -XPOST https://SystemId:APIKey@r3.minicrm.hu/Api/Invoice/17/Storno

În acest caz, sistemul generează automat o factură storno pentru factura emisă. În răspuns vei primi detaliile facturii anulate:

{
    "Id": "17",
    "Number": "2013-E/00016",
    "Type": "Invoice",
    "Media": "PKI",
    "Customer": {
        "Name": "Teszt User",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Teszt utca 1.",
        "AccountNumber": "12345678-12345678-12345678",
        "VatNumber": "12345678-12-1"
    },
    "Vendor": {
        "Name": "Invoice Zrt.",
        "CountryId": "36",
        "PostalCode": "1234",
        "City": "Budapest",
        "Address": "Petőfi u. 8.",
        "AccountNumber": "87654321-87654321-87654321",
        "VatNumber": "87654321-02-3",
        "RegistrationNumber": "",
        "Miscellaneous": ""
    },
    "Subject": "DK2013-E/00002 számú díjbekérő alapján készült.",
    "PaymentMethod": "Cash",
    "Issued": "2013-11-27",
    "Performance": "2013-11-27",
    "Prompt": "2013-11-27",
    "Paid": "2013-11-27",
    "CurrencyCode": "HUF",
    "AmountNet": "12000.00",
    "AmountVat": "3240.00",
    "Amount": "15240.00",
    "IsReverseCharge": "0",
    "DocumentId": "68",
    "DocumentUrl": "https://d1hj6taljsfeus.cloudfront.net/doc/2013/11-27/g/o/go9SWT-_mUVFKQD2-m5-5w-50",
    "DocumentFileName": "szamla-50-2013-e-00016-1.pdf",
    "Items": [
        {
            "Name": "Teszt cikk 1",
            "Description": "",
            "PriceNet": "12 000,00",
            "VAT": "27%",
            "Quantity": "1",
            "Unit": "darab",
            "PriceNetTotal": "12 000,00",
            "PriceTotal": "15 240,00"
        }
    ]
}

Modificarea unui câmp de pe cardul facturii

Există posibilitatea modificării valorilor și pentru câmpurile de pe cardul facturii. Astfel, accesând un URL de forma:

https: // SystemId: APIKey@r3.minicrm.hu/Api/Invoice/123/Project

Unde 123 reprezintă Id-ul facturii, vei putea specifica o valoare pentru un anumit câmp de pe cardul respectivei facturi:

{
   "FieldName": "Test",
}