# MD for: https://www.mercadopago.com.br/developers/es/docs/smartapps/create-store-and-pos.md \# Create store and POS After \[setting up the environment\](https://www.mercadopago.com.br/developers/en/docs/smartapps/development-environment) of the debug terminal to receive your SmartApp, \[integrating\](https://www.mercadopago.com.br/developers/en/docs/smartapps/integrate-payment-flow) and \[testing\](https://www.mercadopago.com.br/developers/en/docs/smartapps/integration-test) the payment flow of our SDK, you will need to create the stores and points of sale (POS) that will be responsible for the operation of these terminals before submitting your application for validation and distribution on the terminals. A \*\*store\*\* represents a physical store within Mercado Pago, which can have one or more associated points of sale. However, \*\*each point of sale only allows one associated terminal\*\*. This means that if you want to integrate more than one terminal, you must create the same number of points of sale and perform their association individually. The creation and subsequent configuration of stores and points of sale can be done through two ways: through the Mercado Pago panel, or via API. The latter option is useful for systems that need to operate with multiple points of sale, as it allows associating multiple stores from the integrating system. :::::AccordionComponent{title="Create and configure store and point of sale via API" pill="1"} It is possible to create stores and points of sale from your system through our APIs for in-person payments. To do this, follow the steps below. ::::TabsComponent :::TabComponent{title="Create store"} To create a store via API, send a \*\*POST\*\* with the Access Token that corresponds to your integration type (:toolTipComponent\[for your own terminal integration\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" linkText="Access credentials" content="Mercado Pago Point integrations to your system for your own use and configured using your application's production credentials. For more information, access the link below."} or :toolTipComponent\[for a third-part integration\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" content="Mercado Pago Point integrations to your system on behalf of a seller and configured using credentials obtained through the OAuth security protocol. For more information, access the link below."}) to the endpoint :TagComponent{tag="API" text="Create store" href="/developers/en/reference/in-person-payments/point/stores/create-store/post"}. You must add the \`user\_id\` of the Mercado Pago account that will receive the money from the transactions in the path of your request and complete the required parameters with the business details as indicated below. > WARNING > > It is essential to correctly fill in all store location information (\`city\_name\`, \`state\_name\`, \`latitude\` and \`longitude\`). Incorrect data can cause errors in tax calculations, directly impacting billing and fiscal compliance of your company. \`\`\`curl curl -X POST \\ 'https://api.mercadopago.com/users/USER\_ID/stores'\\ -H 'Content-Type: application/json' \\ -H 'Authorization: Bearer ACCESS\_TOKEN' \\ -d '{ "name": "Instore Store", "business\_hours": { "monday": \[ { "open": "08:00", "close": "12:00" } \], "tuesday": \[ { "open": "09:00", "close": "18:00" } \] }, "external\_id": "SUC001", "location": { "street\_number": "0123", "street\_name": "Example Street Name.", "city\_name": "City name.", "state\_name": "State name.", "latitude": 27.175193925922862, "longitude": 78.04213533235064, "reference": "Near to Mercado Pago" } }' \`\`\` | Parameter | Requirement | Description and examples | |-------------|------------|-----------------------| | \`user\_id\` | Required| Identifier of the Mercado Pago account that receives the money for sales made at the store. If you are performing your :toolTipComponent\[for your own terminal integration\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" linkText="Access credentials" content="Mercado Pago Point integrations to your system for your own use and configured using your application's production credentials. For more information, access the link below."} integration, you will find this value in the \[Integration data\](https://www.mercadopago.com.br/developers/en/docs/smartapps/resources/application-details). If, on the other hand, you are performing an integration :toolTipComponent\[for a third-part integration\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" linkText="Access credentials" content="Mercado Pago Point integrations to your system on behalf of a seller and configured using credentials obtained through the OAuth security protocol. For more information, access the link below."}, you will obtain the value in the response to the :toolTipComponent\[linking through OAuth\]{link="/developers/en/docs/smartapps/resources/security/landing-hub" linkText="OAuth" content="Private key generated through the OAuth security protocol, which allows managing integrations on behalf of third parties. For more information, go to the documentation."}. | | \`name\` | Required| Name of the created store. | | \`external\_id\` | Optional | External identifier of the store for the integrator's system. It can contain any alphanumeric value up to 60 characters, and must be unique for each store. For example, \`SUCMercadoPago\`. | | \`location\` | Required| This object must contain all data relating to the store location. You must pay particular attention to completing them correctly with the simple decimal standard, especially the \`latitude\` and \`longitude\` parameters, with the real data of the physical location. For example, \`"latitude": 27.175193925922862\`, and \`"longitude": 78.04213533235064\` correspond to the exact location of the Taj Mahal, in India. | If the request was sent correctly, the response will look like the example below. \`\`\`json { "id": 1234567, "name": "Instore Store", "date\_created": "2019-08-08T19:29:45.019Z", "business\_hours": { "monday": \[ { "open": "08:00", "close": "12:00" } \], "tuesday": \[ { "open": "09:00", "close": "18:00" } \] }, "location": { "address\_line": "Example Street Name, 0123, City name, State name.", "latitude": 27.175193925922862, "longitude": 78.04213533235064, "reference": "Near to Mercado Pago" }, "external\_id": "SUC001" } \`\`\` In addition to the data sent in the request, it will return the identifier assigned to that store by Mercado Pago under the id parameter. ::: :::TabComponent{title="Create point of sale"} To be able to make sales with Mercado Pago, each created store must contain at least one associated point of sale. It is possible to create a point of sale and associate it with the previously created store by sending a \*\*POST\*\* with the Access Token that corresponds to your integration type (:toolTipComponent\[for your own terminal integration\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" linkText="Access credentials" content="Integrations of Mercado Pago Point to your system for personal use and configured from production credentials of your application. For more information, access the link below."} or :toolTipComponent\[for third parties\]{link="/developers/en/docs/smartapps/create-application#bookmark\_access\_credentials" linkText="Access credentials" content="Integrations of Mercado Pago Point to your system on behalf of a seller and configured from credentials obtained through the OAuth security protocol. For more information, access the link below."}) to the endpoint :TagComponent{tag="API" text="Create point of sale" href="/developers/en/reference/in-person-payments/point/pos/create-pos/post"} as shown below. \`\`\`curl curl -X POST \\ 'https://api.mercadopago.com/pos'\\ -H 'Content-Type: application/json' \\ -H 'Authorization: Bearer ACCESS\_TOKEN' \\ -d '{ "name": "First POS", "store\_id": "12354567", "external\_store\_id": "SUC001", "external\_id": "SUC001POS001" }' \`\`\` | Parameter | Requirement | Description and examples | |-------------------|------------|-----------------------| | \`name\` | Required | Name of the created point of sale. | | \`store\_id\` | Required | Identifier of the store to which the point of sale belongs, assigned to that store by Mercado Pago. It is returned in the response to the store creation under the \`id\` parameter. | | \`external\_store\_id\` | Optional | External identifier of the store, which was assigned by the integrator's system at the time of its creation under the \`external\_id\` parameter. | | \`external\_id\` | Required | External identifier of the point of sale, defined for the integrator system. It must be a unique value for each point of sale and has a limit of 40 characters. | If the request was sent correctly, the response will look like the example below. \`\`\`json { "id": 2711382, "qr": { "image": "https://www.mercadopago.com/instore/merchant/qr/2711382/0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1.png", "template\_document": "https://www.mercadopago.com/instore/merchant/qr/2711382/template\_0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1.pdf", "template\_image": "https://www.mercadopago.com/instore/merchant/qr/2711382/template\_0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1.png" }, "status": "active", "date\_created": "2019-08-22T14:11:12.000Z", "date\_last\_updated": "2019-08-25T15:16:12.000Z", "uuid": "0977011a027c4b4387e52069da4264deae2946af4dcc44ee98a8f1dbb376c8a1", "user\_id": 446566691, "name": "First POS", "fixed\_amount": false, "category": 621102, "store\_id": "12354567", "external\_store\_id": "SUC001", "external\_id": "SUC001POS001" } \`\`\` You can see in the table below the description of some of the returned parameters that may be useful for continuing with your integration later. | Parameter | Description | |-------------------|-------------| | \`id\` | Identifier assigned to the point of sale by Mercado Pago. | | \`qr\` | Object that will contain a QR code associated with the created point of sale. It can only be used if you have integrated the \[QR Code\](https://www.mercadopago.com.br/developers/en/docs/qr-code/overview) payment solution. | | \`status\` | Status of the point of sale creation. | | \`user\_id\` | Identifier of the Mercado Pago account that receives the money for sales made at the point of sale. | | \`name\` | Name assigned to the point of sale at the time of its creation. | | \`store\_id\` | Identifier of the store to which the point of sale belongs, assigned to that store by Mercado Pago. It is returned in the response to the store creation under the \`id\` parameter. | | \`external\_store\_id\` | External identifier of the store, which was assigned by the integrator's system at the time of its creation under the \`external\_id\` parameter. | | \`external\_id\` | External identifier of the point of sale, defined for the integrator system at the time of its creation. | > NOTE > > Remember that it is only possible to configure one terminal per point of sale. If you want to integrate multiple terminals, you must create a point of sale for each one of them. If both requests were successful, you will have created and configured the store and point of sale necessary to continue with the configuration of your terminal. ::: :::: ::::: :::AccordionComponent{title="Create and configure store and point of sale via Panel" pill="2"} Creating stores and points of sale through the Mercado Pago Panel is the option for those who only need to manage one point of sale and prefer to simplify the process. To do this, log into your \[Mercado Pago account\](https://www.mercadopago.com.br/home), and follow the instructions below. 1\. In the left side menu, go to \*\*Your business > Stores and points of sale\*\*. 2\. In the "Store list" section, click the \*\*+ Add store\*\* button. 3\. Complete the \*\*Name\*\* and \*\*Address\*\* of your new store, optionally add \*\*Extra data\*\*, if you need more detail, and click \*\*Continue\*\*. 4\. Complete the required information with the \*\*store operating hours\*\*, selecting the days and opening hours. When finished, click \*\*Continue\*\*. > SUCCESS\_MESSAGE > > The options available on this screen adapt to multiple scenarios. It will allow you to select a single schedule for all days of the week, or a different schedule for each one, along with the possibility of entering special schedules for holidays. Choose the option that best suits your store. 5\. Next, you will be on the screen to \*\*create points of sale\*\* associated with the store, where you must assign a \*\*Name\*\*. If you wish, you can create more than one point of sale. > NOTE > > Remember that it is only possible to configure one terminal per point of sale. If you want to integrate multiple terminals, you must create a point of sale for each one of them. 6\. Click the \*\*Continue\*\* button, and you're done! You have created and configured your store and your point of sale. ::: The IDs returned (\`store\_id\` and \`pos\_id\`) after creating the stores and POS must be provided to your Mercado Pago representative. This will allow you to proceed with the \[SmartApp deployment process\](https://www.mercadopago.com.br/developers/en/docs/smartapps/deployment).