Каталог на грешки
Сите шифри што API-то ги враќа се на оваа страница — нема втор список на друго место. Најбрзо се стигнува со Ctrl+F по шифрата или по текстот што го гледаш во својот лог.
EARH-1xxx — кај интеграторот — клучот или адресата
| Шифра | HTTP | Што значи | Што да направиш | Текст од API-то |
|---|---|---|---|---|
| 401 | Барањето стигна без API клуч, или со клуч што не постои кај нас. Најчесто заглавието Authorization недостасува, или клучот е препишан со празно место или скратен при копирање. | Провери го клучот што го праќаш знак по знак и прати го одново. Ако клучот е точно тој што ти е издаден, обрати ни се — можеби е издаден за друга околина (демо наспрема продукција). | API key is missing or unknown. |
| 401 | Клучот постои, но рокот му е поминат. Клучевите се издаваат со рок и по него престануваат да важат сами по себе. | Побарај нов клуч и замени го во својата поставка. Барањата не се губат — штом клучот е нов, истите барања поминуваат непроменети. | API key has expired. |
| 401 | Клучот е повлечен пред истекот на рокот — вообичаено затоа што е заменет со нов, или затоа што е пријавен како компромитиран. | Не го обидувај истиот клуч одново, тој нема да оживее. Обрати ни се за нов клуч и провери дали некој од твојот тим веќе го добил заменскиот. | API key has been revoked. |
| 403 | Клучот е исправен, но барањето доаѓа од адреса што не е на дозволената листа за тој клуч. | Прати ни ја адресата од која навистина излегуваат твоите барања за да ја додадеме. Внимавај ако сообраќајот излегува преку посредник или облак — адресата што ја гледаме ние е неговата, не твојата. | Request origin is not on the allowed list. |
| 403 | Клучот важи, но не е издаден за интеграцискиот API. Опфатот е дел од самиот клуч и не се менува од твоја страна. | Обрати ни се да ти издадеме клуч со опфат IntegrationApi. Не го обидувај истиот клуч на друга адреса — исходот ќе биде ист. | API key does not have the IntegrationApi scope. |
| 429 | Достигната е границата на сообраќај за твојот клуч во тековниот прозорец. Ова не е грешка во барањето — самото барање е исправно. | Почекај колку што кажува заглавието Retry-After во одговорот и прати го истото барање одново. Ако редовно ја допираш границата, разреди ги повиците или обрати ни се да ја погледнеме. | Rate limit exceeded. |
| 400 | Во телото на барањето стои поле што именува tenant. Кој tenant е во прашање се одредува од клучот, па такво поле не смее да доаѓа однадвор. | Отстрани го тоа поле од телото и прати одново. Ако твојата библиотека го додава сама, исклучи го тоа однесување — клучот веќе го носи податокот. | Request body must not contain a tenant-identifying field. |
| 400 | Заглавието X-Software-Id недостасува. По него распознаваме кој софтвер праќа, што ни треба кога бараме грешка заедно со тебе. | Додај го заглавието со ознаката на твојот софтвер во секое барање и прати одново. | X-Software-Id header is missing. |
| 404 | Адресата не постои во верзијата кон која праќаш. Најчесто патеката е погрешно напишана, или е од постара односно понова верзија од онаа во адресата. | Спореди ја патеката со списокот на адреси во ова упатство, вклучувајќи го и делот со верзијата. Ако адресата ја има само во понова верзија, премини на неа свесно — не менувај само еден повик. | This endpoint does not exist in this version. |
EARH-2xxx — кај интеграторот — содржината на пратениот документ
| Шифра | HTTP | Што значи | Што да направиш | Текст од API-то |
|---|---|---|---|---|
| 400 | Телото воопшто не може да се прочита како XML — незатворена ознака, вишок знак, или пресечена содржина при праќање. | Провери го документот со XML читач пред праќање и прати го одново. Провери и дека телото не се крати при пренос (должина, кодирање, компресија). | Request body is not well-formed XML. |
| 400 | Телото е валиден XML, но не е UBL 2.1 документ — коренот или именските простори не се тие што ги очекуваме. | Изнеси го документот во UBL 2.1 од твојот софтвер и прати го одново. Друг облик на е-фактура не се прифаќа на оваа адреса. | Document is not UBL 2.1. |
| 400 | Во документот нема податок за примач. Без него не знаеме кому оди фактурата. | Пополни го делот за примач во документот и прати го одново. Ознаката за идемпотентност може да остане иста — содржината се менува, па новото барање нема да се смета за дупликат. | Document has no recipient. |
| 400 | ЕДБ-то на примачот во документот не е во облик што го препознаваме — најчесто има празни места, цртички, или помалку цифри отколку што ЕДБ носи. | Поправи го ЕДБ-то во документот и прати го одново. Ознаката за идемпотентност може да остане иста — содржината се менува, па новото барање нема да се смета за дупликат. | Recipient tax number (EDB) is malformed. |
| 400 | Документот не кажува каков е — фактура, одобрение или задолжение. Тој податок ја одредува понатамошната обработка. | Внеси го типот на документот според UBL 2.1 и прати го одново. | Document has no type. |
| 400 | Во документот недостасува износот за плаќање. Документ без износ не може да се поднесе понатаму. | Провери ги износите во документот — вкупниот износ мора да постои — и прати го одново. | Document has no amount. |
| 409 | Истата ознака за идемпотентност веќе е употребена, но со друга содржина. Тоа значи дека или е испратен нов документ со стара ознака, или документот е изменет по првото праќање. | Ако праќаш нов документ, дај му нова ознака за идемпотентност. Ако праќаш повторно ист документ, прати ја непроменета неговата содржина — тогаш одговорот е истиот како првиот пат. | This idempotency key was already used with different content. |
| 400 | Во едно барање има повеќе од еден документ. Оваа адреса прима точно еден документ по повик. | Раздели ги документите и прати го секој со свој повик и своја ознака за идемпотентност. | Request contains more than one document. |
| 413 | Документот е поголем од дозволената големина. Дозволената граница е напишана во самиот одговор. | Намали го документот под таа граница — најчесто вишокот доаѓа од вградени прилози или слики — и прати го одново. | Document exceeds the configured size limit. |
| 400 | Заглавието X-Idempotency-Key недостасува. Без него не можеме да разликуваме повторено барање од нов документ. | Додај ознака за идемпотентност — иста за повторен обид со ист документ, нова за секој нов документ — и прати одново. | X-Idempotency-Key header is missing. |
| 400 | Бараниот вид кодна листа не постои. Одговорот ги набројува видовите што ги поддржуваме. | Земи еден од видовите наведени во одговорот и повикај одново. | Unknown codelist type. |
EARH-3xxx — кај интеграторот — идентификаторот или состојбата
| Шифра | HTTP | Што значи | Што да направиш | Текст од API-то |
|---|---|---|---|---|
| 404 | Со тој идентификатор нема документ кај твојот tenant. Или идентификаторот е погрешен, или документот припаѓа на друг tenant. | Провери го идентификаторот од одговорот при праќањето. Не барај го документот по друг податок — тука се работи само по идентификаторот што сме го вратиле. | Document not found. |
| 404 | Документот постои, но не и во бараниот формат. Некои формати настануваат дури по одреден чекор од обработката. | Провери во кој статус е документот и побарај формат што постои за него. Ако форматот се очекува подоцна, почекај го статусот по кој настанува и повикај одново. | This format does not exist for the document. |
| 409 | Документот е во состојба од која сторнирањето не е дозволено — обработката отишла подалеку од точката до која може да се повлече. | Провери го статусот на документот. Ако сторнирањето е сепак потребно, тоа се решава по деловен пат со примачот, не преку овој повик. | Current status does not allow cancellation. |
| 409 | Документот е веќе сторниран — најчесто затоа што истиот повик е испратен двапати. | Ништо не треба да се прави. Состојбата е таа што си ја сакал; третирај го овој одговор како потврда, не како неуспех. | Document is already cancelled. |
| 400 | Бараната големина на страница е поголема од дозволената. Дозволената највисока вредност е напишана во одговорот. | Намали ја големината на страница под таа вредност и повикај одново, па земи ги останатите записи со следните страници. | Requested page size exceeds the allowed maximum. |
EARH-4xxx — ни кај едниот ни кај другиот — исходот на обработката
| Шифра | HTTP | Што значи | Што да направиш | Текст од API-то |
|---|---|---|---|---|
| — | Документот не помина проверка пред поднесување. Оваа шифра не доаѓа како одбиено барање — праќањето поминало уредно, а шифрата се појавува подоцна кај самиот документ, во полето failureCode. | Прочитај го придружниот опис кај документот, поправи го тоа што е пријавено и прати нов документ со нова ознака за идемпотентност. | The document failed pre-submission validation. |
| — | УЈП го одби документот. Оваа шифра не доаѓа како одбиено барање — се појавува подоцна кај самиот документ, во полето failureCode, а шифрата на УЈП стои во блокот ujp. | Прочитај ја шифрата и описот од блокот ujp — таму е вистинската причина. Поправи го документот според неа и прати нов документ со нова ознака за идемпотентност. | The document was rejected by UJP. See the ujp block for their code. |
| — | Примачот го одби документот. Оваа шифра не доаѓа како одбиено барање — се појавува подоцна кај самиот документ, во полето failureCode. | Причината е кај примачот, не кај техниката. Разјасни ја со него и, ако е потребно, прати исправен документ со нова ознака за идемпотентност. | The recipient rejected the document. |
| — | Настанала техничка грешка при обработката или испораката. Оваа шифра не доаѓа како одбиено барање — се појавува подоцна кај самиот документ, во полето failureCode. | Не праќај го документот одново веднаш. Обрати ни се со идентификаторот на документот — причината е на наша страна или кај испораката, не во она што си го пратил. | A technical error occurred during processing or delivery. |
| — | Примачот од документот не можеше да се разреши до вистински прималец. Оваа шифра не доаѓа како одбиено барање — се појавува подоцна кај самиот документ, во полето failureCode. | Провери го ЕДБ-то и податоците за примачот со самиот примач. Кога ќе бидат потврдени, прати нов документ со нова ознака за идемпотентност. | The recipient could not be resolved. |
EARH-9xxx — кај нас
| Шифра | HTTP | Што значи | Што да направиш | Текст од API-то |
|---|---|---|---|---|
| 500 | Непредвидена грешка на наша страна. Барањето што си го пратил не е причината. Одговорот носи идентификатор на настанот (eventId). | Обиди се одново по кратко време со истата ознака за идемпотентност. Ако се повтори, обрати ни се и наведи го eventId — по него го наоѓаме точниот настан. | Unexpected error. |
| 409 | Праќањето на документи преку API не е овозможено за овој tenant. Клучот и документот се исправни — недостасува одобрувањето на самата насока. | Обрати ни се да ја овозможиме излезната насока за твојот tenant. Повторување на повикот нема да го промени исходот додека тоа не се направи. | Outbound delivery via API is not enabled for this tenant. |