Pređi na sadržaj

Magento · preko API-ja

Magento fiskalizacija u Srbiji: fiskalni račun preko BokaPOS API-ja

Magento ima sve što treba za čistu integraciju: događaje porudžbine, modul koji ih sluša i konfiguraciju za mapiranje poreskih klasa. BokaPOS nema gotov Magento modul; vaš developer ga napravi oko BokaPOS API-ja, obično za dan ili dva.

Magento prodavnice u Srbiji često prodaju i B2B kupcima. Tu je važno da se na fiskalni račun za firmu upiše PIB kupca kao identifikacija; BokaPOS to podržava u istom pozivu. Šta račun mora da sadrži: ESIR za web shop.

Primer ispod je isti poziv koji radi za svaku platformu: token, pa jedan POST /v1/fiscal-documents sa idempotentnim ključem porudžbine. Kompletna dokumentacija sa primerima u pet jezika je na stranici API.

Gde se integracija zakači

Sopstveni modul registruje observer na događaj koji Magento emituje pri čuvanju porudžbine ili promeni statusa. Kada porudžbina pređe u status koji ste izabrali (na primer plaćeno ili isporučeno), observer sastavi zahtev iz stavki, popusta, dostave i plaćanja, pozove BokaPOS i sačuva PFR broj, verifikacioni link i status u atributima porudžbine. Credit memo pokreće fiskalnu refundaciju.

Koraci integracije

Obim posla
Tipično dva dana rada developera koji poznaje Magento module, uključujući credit memo i testiranje u sandboxu.

  1. Nalog i sandbox

    Zatražite BokaPOS pristup i dobijate sandbox pristupne podatke i probni bezbednosni element, besplatno.

  2. Konfiguracija modula

    U admin konfiguraciji čuvajte client id i tajnu, izbor obveznika i poslovnog prostora, status koji pokreće fiskalizaciju i mapiranje poreskih klasa na oznake sa GET /v1/tax-rates.

  3. Observer na statusu

    Na izabranom statusu pošaljite POST /v1/fiscal-documents sa idempotentnim ključem iz increment id-a porudžbine. Sačuvajte odgovor uz porudžbinu i prikažite ga u adminu.

  4. Račun kupcu

    Priložite PDF iz /representations/ uz Magento e-poštu o porudžbini ili uključite BokaPOS modul E-mail.

  5. Credit memo i produkcija

    Credit memo šalje fiskalnu refundaciju sa referencom i identifikacijom kupca. Posle testova obveznik aktivira bezbednosni element i prelazite na produkcione pristupne podatke.

Isti poziv za svaku platformu

curl -X POST "https://auth.bokapos.rs/realms/boka/protocol/openid-connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials" \
  -d "client_id=$BOKAPOS_CLIENT_ID" \
  -d "client_secret=$BOKAPOS_CLIENT_SECRET"

curl -X POST "https://api.bokapos.rs/v1/fiscal-documents" \
  -H "Authorization: Bearer $BOKAPOS_TOKEN" \
  -H "Idempotency-Key: order-4127-sale-1" \
  -H "Content-Type: application/json" \
  -d '{
  "taxpayerId": "3f9c2a8e-6b1d-4e5a-9c47-1d2b8e6f0a11",
  "businessPremiseId": "b7d4e2c1-9a3f-4c8e-8f21-6e5a0c9d3b22",
  "clientReference": "ORDER-4127",
  "invoiceType": "NORMAL",
  "transactionType": "SALE",
  "cashier": {
    "id": "web-shop",
    "displayName": "Web shop"
  },
  "items": [
    {
      "name": "Bluetooth slušalice",
      "unitOfMeasure": "kom",
      "quantity": 1,
      "unitPrice": 8990,
      "gtin": "8606012345678",
      "taxLabels": [
        "F"
      ]
    }
  ],
  "payments": [
    {
      "type": "CARD",
      "amount": 8990
    }
  ],
  "metadata": {
    "orderId": "4127",
    "channel": "web"
  }
}'

API dokumentacija

Česta pitanja

Da li BokaPOS ima gotov Magento modul?

Trenutno ne. Postoji dokumentovan API, primeri u PHP-u i besplatan sandbox, pa developer modul napravi za dan ili dva.

Kako se fiskalizuje prodaja firmi u Magentu?

Isto kao fizičkom licu, uz identifikaciju kupca: PIB firme se šalje u polju kupca i štampa se na računu kao ID kupca.

Šta sa delimičnim isporukama?

Fiskalni račun prati promet. Ako isporučujete u delovima, dogovorite sa knjigovođom da li izdajete račun po isporuci ili avansni račun pri uplati; BokaPOS podržava oba toka.

Mogu li da testiram bez sertifikata obveznika?

Da. Sandbox koristi probni bezbednosni element koji BokaPOS dodeljuje, pa integraciju testirate pre nego što obveznik dobije svoj element od Poreske uprave.

Spremni da fiskalizujeteiz sopstvenog sistema?

Probno okruženje je besplatno, a prvi račun izdajete isti dan.