Обновяване на информация за документ чрез API
Предназначение: | Използва се за обновяване на информацията в документ |
Функция: | document_update |
Параметри: |
1. Вид документ (1 - фактура, 2 - проформа, 3 - стокова разписка, 4 - протокол) 2. ID на документ 3. Обект $document от тип StdClass , който съдържа полета за:- Обща сума в лева ( $document->sum ) - данъчна основа- ДДС % ( $document->dds_percent ) - 0, 9 или 20- Основание за нулева ставка или ненач. на ДДС ( $document->null_value ) - Попълва се само ако ДДС е 0%- Начин на плащане ( $document->payment_method_id ) - 1 - в брой, 2 - по банка, 3 - POS, 4 - Epay.BG, 5 - частично в брой- Забележка към документ ( $document->note )- Статус на плащане ( $document->paid ) - 1 - платен, 0 - неплатен, 2 - частично платен- Кредитно или дебитно известие ( $document->kind ) - използва се само за фактурите; // 1 - за кредитно, 2 - за дебитно известие.- Основание за кредитно или дебитно известие ( $document->reason ) - Попълва се ако се издава кредитно или дебитно известие- ID на клиент ( $document->client_id )- Име на клиент ( $document->client_name )- Населено място на клиент( $document->client_place )- Данъчен адрес на клиент( $document->client_address )- ИН по ДДС на клиент ( $document->client_dds )- МОЛ на клиент ( $document->client_face )- Телефон на клиент ( $document->client_phone )- Email на клиент ( $document->client_email )- Име на получател ( $document->receiver )- МОЛ на доставчик ( $document->company_face )- Съставител на документа ( $document->creator )- Място на сделката ( $document->place ) - ако не е посочено се използва мястото от данъчния адрес на доставчика- Редове на документ ( $document->rows ) - масив от обекти StdClass със следните полета:» Име на стока или услуга ( $row->name )» Количество на стока/услуга ( $row->quantity )» Мярка на стока/услуга ( $row->measure_id ) - 70 за брой. За повече информация - 4. ДРУГИ > Таблица с използвани мерни единици» Ед. цена на стока/услуга в лева ( $row->price )» Артикулен номер ( $row->code ) - използва се задължително ако се ползва модул "Склад" или някоя от следващите две настройки» Зареждане на името от базата данни ( $row->load_name_from_db ) - можете да не подавате името през API, а да се извлича директно от базата данни спрямо подадения артикулен номер. Въведете 1 ако желаете това действие.» Зареждане на цената от базата данни ( $row->load_price_from_db ) - можете да не подавате ед. цена през API, а да се извлича директно от базата данни спрямо подадения артикулен номер. Въведете 1 ако желаете това действие.Допълнителни полета за Invoice - документ на английски език - Валута за английски език ( $document->invoice_currency_id ) - тук са описани всички възможни валути.- Фиксинг спрямо лева ( $document->currency_fixing ) - по подразбиране е 1.- Обща сума в съответната валутата ( $document->retail_sum ) - ако се пропусне се изчислява автоматично спрямо фиксинга.
|
Резултат: | Обект $document от тип StdClass . В $document->id се съдържа ID на документа, а в $document->number неговия номер. |
Грешки (код): |
- Не е въведен ЕИК. Можете да използвате 000000000, 111111111 или 999999999 ако не знаете ЕИК на клиента! (501) - Не е подаден последния параметър с детайлите на документа и редовете! (502) - Невалиден вид на документ. Използвайте 1 за фактура/и, 2 за проформа/и, 3 за стокови разписка/и или 4 за протокол/и. (3) |
Забележки: | 1. Ако някое поле свързано с клиента не е зададено в третия параметър на функцията, тогава то се извлича от базата данни в зависимост от въведения ЕИК номер. 2. Останалата инфорамация за документа (напр. Съставител) се извлича от последно издадения документ. 3. Тази функция не променя складовите наличности. 4. Ако създавате документ само в чуждестранна валута, тогава можете да въведете единичните цени в редовете в съответната валута и за фиксинг да зададете 1. |
Примерен код: |
// Примерният код се вмъква между НАЧАЛО и КРАЙ в инициализиращия код описан тук.
|