U slučaju da imate online trgovinu/landing page, koja još nije podržana (integrirana) od strane MetaKocke, možete slati dokumente u MetaKocku. Isti će se zapisati u prodajne narudžbe na isti način, kao što se prenose iz online trgovina. Više informacija o API sučelju možete pronaći na https://github.com/metakocka/metakocka_api_base/, ili možete pratiti donje upute.
Opći zahtjevi :
- API ključ možete urediti preko aplikacije za postavke - pogledajte sljedeći link: http://blog.metakocka.si/dodatne-nastavitve-api/
- Svi zahtjevi su tipa POST
- Svi zahtjevi moraju imati podešen Header parameter Content-type : application/json
- U slučaju pogreške odgovor će sadržati opr_code > 0 i opis pogreške u opr_desc
- Prilikom nadogradnje MetaKocka može biti nedostupna, pa uzmite u obzir da se slanje može izvesti ponovo, ako MetaKocka nije dostupna.
Generiranje nove narudžbe
Napomene :
- pod title in buyer_order upišite narudžbu iz online trgovine
- mogući putni troškovi/ostali troškovi su svoj proizvod, kao primjer proizvoda Delivery cost. Potrebno ga je označiti kao uslugu.
- delivery_type and method_of_payment must be set
- dodatna dokumentacija : https://github.com/metakocka/metakocka_api_base/blob/master/docs/documents_put_document_sales_order.md
URL : https://main.metakocka.si/rest/eshop/v1/put_document
Zahtjev :
{
"secret_key": "TODO",
"company_id": "16",
"doc_type": "sales_order",
"doc_date": "2017-10-30+02:00",
"title": "#390",
"buyer_order": "#390",
"partner": {
"business_entity": "true",
"taxpayer": "true",
"foreign_county": "false",
"tax_id_number": "SI20000001",
"customer": "API partner 1",
"street": "Street 100",
"post_number": "1000",
"place": "Ljubljana",
"province": "Severna primorska",
"country": "Slovenia",
"partner_contact": {
"name": "Janez Novak",
"phone": "05 320 24 88",
"fax": "05 320 24 84",
"gsm": "071 333 444",
"email": "test@test.co.uk"
}
},
"receiver": {
"business_entity": "true",
"taxpayer": "true",
"foreign_county": "false",
"tax_id_number": "SI20000002",
"customer": "API partner 2",
"street": "Street 200",
"post_number": "1000",
"place": "Ljubljana",
"country": "Slovenia",
"partner_contact": {
"name": "Janez Novak",
"phone": "05 320 24 88",
"fax": "05 320 24 84",
"gsm": "071 333 444",
"email": "test@test.co.uk"
}
},
"currency_code": "EUR",
"delivery_type": "GLS",
"notes": "Custom extra message",
"method_of_payment": "PayPal",
"product_list": [
{
"code": "p1",
"name": "Product with tax 22%",
"name_desc" : "Extra description for product",
"amount": "1",
"price_with_tax": "100",
"unit" : "kos",
"sales" : true,
"tax": "EX4"
},
{
"code": "p2",
"name": "Product with tax 9,5%",
"name_desc" : "Extra description for product",
"amount": "1",
"price_with_tax": "100",
"unit" : "kos",
"sales" : true,
"tax": "EX3"
},
{
"code": "p3",
"name": "Product with tax 0%",
"name_desc" : "Extra description for product",
"amount": "1",
"price_with_tax": "100",
"unit" : "kos",
"sales" : true,
"tax": "000"
},
{
"code": "p4",
"name": "Delivery cost",
"amount": "1",
"price_with_tax": "5",
"unit" : "stor",
"sales" : true,
"service": true,
"tax": "EX4"
}
]
}
Odgovor :
{
"opr_code": "0",
"opr_time_ms": "87",
"partner": {
"mk_id": "1600000073"
},
"receiver": {
"mk_id": "1600000076"
},
"mk_id": "1600000100",
"count_code": "2/2017"
}
Dodatno plaćanje
Ukoliko Vaša aplikacija provjeri je li određena narudžba poslana, možete u MK poslati podatke da je narudžba već plaćena.
Napomena :
- mk_id dobite kao odgovor prethodnog poziva
- dodatna dokumentacija : https://github.com/metakocka/metakocka_api_base/blob/master/docs/put_transaction.md
URL : https://main.metakocka.si/rest/eshop/v1/put_transaction
Zahtjev :
{
"secret_key": "TODO",
"company_id": "16",
"doc_type" : "sales_order",
"mk_id":"1600000073",
"payment_mode" : "payment",
"payment_type" : "PayPal",
"date" : "2017-10-30+02:00",
"price" : "305"
}
Odgovor :
{
"opr_code": "0",
"opr_time_ms": "0"
}
Značenje Vrste plaćanja i Način plaćanja
Za plaćanja narudžbe koristimo dva izraza :
- Vrsta plaćanja - kako bi trebalo platiti narudžbu. To je nešto, što kupac obično odabere u online trgovini (npr. Pouzećem, Karticom, PayPal, itd).
- Način plaćanja - kako je narudžba u stvari bila plaćena (platni instrument, iznos, datum).
Obe vrste plaćanja je moguće podesiti u Postavkama -> Registri. Imenuju se "Vrsta plaćanja" in "Način plaćanja"
Za platne instrumente preko kojih novac dobivamo nakon kreiranja narudžbe (npr. PayPal, kartice) izvest ćemo dva API poziva - put_document (upotrijebimo polje method_of_payment za Vrstu plaćanja) i potom put_transaction (ime upldate je uneseno u payment_type). Za narudžbe, koje stranka plaća pouzećem, izvest ćemo samo poziv put_document i primjerno podesiti polje method_of_payment.
FAQ
1. Kako u MetaKocki mogu pogledati zapisanu narudžbu?
Zapisana narudžba se nalazi pod prodajnim narudžbama. Odaberite osvježi popis, kako bi Vam se pokazale nove narudžbe.
2. Kako mogu provjeriti plaćeni iznos za prodajnu narudžbu?
3. Prikazuje se pogreška "Paramether 'payment_type' has invalid value : PayPal. Valid values : Transakcijski račun,Gotovina,Prenos preplačila,Kartica BA"
Potrebno je dodati dodatni platni instrument s imenom PayPal.
Napomena:
- Ako se računi s tim platnim instrumentima šalju na FURS, označite ih sa Vrsta plaćanja = Ostalo. Ako ne želite da se šalju na FURS, podesite im Vrstu plaćanja = Transakcijski račun.