{
    "componentChunkName": "component---node-modules-rocketseat-gatsby-theme-docs-core-src-templates-docs-query-js",
    "path": "/configuracion/cancelacion",
    "result": {"data":{"mdx":{"id":"c96bda29-c76d-519f-a570-bac4a1b69593","excerpt":"En el momento que un cliente elige  MODO  como opción de pago y crea un orden, se reserva el stock de los productos seleccionados. En muchos casos, los clientes…","fields":{"slug":"/configuracion/cancelacion/"},"frontmatter":{"title":"Cron para cancelación de órdenes","description":"Cancelación de órdenes sin pagar","image":null,"disableTableOfContents":null},"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"Cron para cancelación de órdenes\",\n  \"description\": \"Cancelación de órdenes sin pagar\"\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"En el momento que un cliente elige \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"MODO\"), \" como opci\\xF3n de pago y crea un orden, se reserva el stock de los productos seleccionados. En muchos casos, los clientes llegan hacia las instancias finales del proceso de compra, pero nunca terminan de realizar el pago. Estas situaciones pueden llegar a generar inconvenientes, dado que se est\\xE1 reservando stock para una persona que no realizar\\xE1 el pago correspondiente.\"), mdx(\"p\", null, \"En esta integraci\\xF3n las \\xF3rdenes que no sean pagadas, es decir, aquellas que aun est\\xE1n en estado \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Pendiente de pago\"), \", ser\\xE1n canceladas autom\\xE1ticamente mediante la implementaci\\xF3n de un cron. Este cron se ejecutar\\xE1 cada una determinada cantidad de tiempo, cancelando aquellas \\xF3rdenes que se encuentren en \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Pendiente de Pago\"), \" por un tiempo mayor o igual a 15 minutos. Esto permitir\\xE1 que se libere el stock de las \\xF3rdenes que no fueron pagadas. Luego de la ejecuci\\xF3n del cron, el estado de las \\xF3rdenes pasar\\xE1 a \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Cancelado\"), \".\"), mdx(\"p\", null, \"El cron se debe configurar a nivel de servidor de tu tienda, con el siguiente comando:\"), mdx(\"pre\", null, mdx(\"code\", {\n    parentName: \"pre\"\n  }, \"    php bin/magento modo:cancel:orders -s 1\\n\")), mdx(\"p\", null, \"Donde el par\\xE1metro \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"-s\"), \" corresponde al \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Store_ID\"), \" de la tienda donde se tiene habilitado \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"MODO\"), \" como medio de pago (este dato ser\\xE1 conocido por el equipo t\\xE9cnico que gestiona tu tienda \", mdx(\"strong\", {\n    parentName: \"p\"\n  }, \"Magento\"), \"). Adicionalmente del lado de la tienda se debe configurar la frecuencia en la que se ejecuta el cron, se sugiere que esta frecuencia sea de 1 hora.\"), mdx(\"blockquote\", null, mdx(\"p\", {\n    parentName: \"blockquote\"\n  }, \"Nota\\nDeber\\xE1s saber que el c\\xF3digo QR que se despliega en el modal tendr\\xE1 una vigencia de 15 minutos. Pasados los 15 minutos, el cliente no podr\\xE1 efectuar el pago con el mismo QR\")));\n}\n;\nMDXContent.isMDXComponent = true;","headings":[]}},"pageContext":{"slug":"/configuracion/cancelacion/","prev":{"label":"Flujo del administrador","link":"/uso/flujo-del-admin"},"next":{"label":"Pagos rechazados","link":"/configuracion/pagos-rechazados"},"repositoryEditUrl":"","repositoryProvider":""}},
    "staticQueryHashes": ["1954253342","2328931024","2501019404","973074209"]}