Si eres el propietario de una tienda online o una landing page que aún no está soportada (integrada) con MetaKocka, igualmente puedes enviar documentos a MetaKocka. Estos serán registrados como pedidos de venta del mismo modo que los que se transfieren desde las tiendas online.
Puedes encontrar más información sobre la interfaz API en https://github.com/metakocka/metakocka_api_base/ , o seguir las instrucciones que aparecen a continuación:
Requisitos básicos:
- La clave API puede modificarse mediante la aplicación de configuración — consulta http://blog.metakocka.si/dodatne-nastavitve-api/
- Todas las solicitudes deben ser de tipo POST
- Todas las solicitudes deben incluir en el encabezado el parámetro Content-type : application/json configurado
- En caso de error, la respuesta contendrá opr_code > 0 y una descripción del error en opr_desc
- Si MetaKocka no está disponible debido a una actualización en curso, ten en cuenta que podría ser necesario reenviar la solicitud
Generación de un nuevo pedido
Notas:
- En title (numbre) y buyer_order (pedido del cliente) introduce el número de pedido procedente de la tienda online
- Los posibles gastos de transporte u otros gastos son productos independientes, de forma similar a los gastos de envío. Deben marcarse como un servicio.
- Es obligatorio especificar delivery_type y method_of_payment
- Documentación adicional: 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
Llamada/request:
{
"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"
}
]
}
Respuesta:
{
"opr_code": "0",
"opr_time_ms": "87",
"partner": {
"mk_id": "1600000073"
},
"receiver": {
"mk_id": "1600000076"
},
"mk_id": "1600000100",
"count_code": "2/2017"
}
Pago adicional
Si tu aplicación verifica si un pedido ha sido pagado, puedes enviar la información a MetaKocka indicando que dicho pedido ya está pagado.
Notas:
- mk_id recibido como respuesta a la llamada anterior
- Documentación adicional: https://github.com/metakocka/metakocka_api_base/blob/master/docs/put_transaction.md
URL : https://main.metakocka.si/rest/eshop/v1/put_transaction
Llamada/request:
{
"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"
}
Respuesta:
{
"opr_code": "0",
"opr_time_ms": "0"
}
Significado de Tipo de pago y Método de pago
Se utilizan dos términos para los pagos de pedidos:
- Tipo de pago - cómo debe pagarse el pedido. Lo indica el cliente en la tienda online (por ejemplo, contra reembolso, tarjeta de crédito, PayPal, etc.).
- Método de pago - cómo se pagó realmente el pedido (instrumento de pago, fecha).
BAmbos tipos de pago pueden configurarse en Configuración → Registros. Sus nombres son “Tipo de pago” y “Método de pago”, respectivamente.
Para los instrumentos de pago que cobran inmediatamente después de realizar el pedido (por ejemplo, PayPal, tarjetas de crédito), se realizan dos llamadas API: put_document (el campo method_of_payment se usa como Tipo de pago) y luego put_transaction (el nombre del pago se introduce en payment_type).
Para los pedidos pagados por el cliente mediante contra reembolso, se realiza una sola llamada: put_document, y el campo method_of_payment debe configurarse adecuadamente.
Preguntas frecuentes
1. ¿Cómo comprobar los pedidos registrados en MetaKocka?
Los pedidos registrados se encuentran en Pedidos de venta. Selecciona “Actualizar lista” para mostrar los nuevos pedidos.


2. ¿Cómo comprobar el importe pagado en el pedido de venta?

3. Error recibido: “El parámetro 'payment_type' tiene un valor no válido: PayPal. Valores válidos: Transferencia bancaria, Metálico, Trasnferencia de sobrepago, Tarjeta BA”
Es necesario agregar un instrumento de pago adicional llamado PayPal.


Nota:
- Si las facturas con ese instrumento de pago se envían a la autoridad fiscal correspondiente, márcalas con Tipo de pago = Otras. Si no deseas que se envíen a la autoridad fiscal, establece Cuenta bancaria, como su tipo de pago.