{"info":{"_postman_id":"11f57ce2-24bc-4656-9d14-2567d68eb198","name":"FAAS API","description":"<html><head></head><body><p>Welcome to the integration API for our system. This API provides access to key functionalities that enable interaction with commerce-related data. Refer to the detailed documentation for information about available endpoints, required parameters, and expected responses.</p>\n</body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[],"owner":"35146358","collectionId":"11f57ce2-24bc-4656-9d14-2567d68eb198","publishedId":"2sA3QpDEFA","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2024-06-18T16:02:10.000Z"},"item":[{"name":"Commerce API","item":[{"name":"Load Testing Policy","item":[],"id":"073e2b16-0e96-463a-8bb7-f1006eb6e5f3","description":"<hr />\n<h3 id=\"load-testing-policy-qa-environment\">Load Testing Policy (QA Environment)</h3>\n<hr />\n<h4 id=\"load-testing-requests\">Load Testing Requests</h4>\n<p>Integrators who need to perform load or stress tests on the Commerce API services must follow the procedure described below.</p>\n<h4 id=\"execution-conditions\">Execution Conditions</h4>\n<ul>\n<li>Tests must be requested at least <strong>48 hours in advance</strong>.</li>\n<li>Tests may only be executed on the following days:<ul>\n<li>Tuesday</li>\n<li>Wednesday</li>\n<li>Thursday</li>\n</ul>\n</li>\n<li>Allowed time window: <strong>2:00 PM – 6:00 PM (GMT-5)</strong></li>\n</ul>\n<h4 id=\"mandatory-notification\">Mandatory Notification</h4>\n<p>Send a request to the following contacts:</p>\n<ul>\n<li><code>m.pineda@refacil.com</code></li>\n<li><code>soportetecnico@refacil.com</code></li>\n</ul>\n<h4 id=\"important\">Important</h4>\n<p>Tests are performed under monitoring by the Cloud and IT team to prevent any impact on the platform.</p>\n<hr />\n<h3 id=\"test-deck-and-certification-process\">Test Deck and Certification Process</h3>\n<hr />\n<h4 id=\"general-certification-flow\">General Certification Flow</h4>\n<p>The certification process consists of <strong>3 mandatory stages</strong> before an integrator can be enabled in production:</p>\n<ul>\n<li><strong>Stage 1 — QA Testing:</strong> The integrator executes the full test deck in the testing environment. All validations are performed exclusively in this environment; no tests are conducted against production.</li>\n<li><strong>Stage 2 — Validation by Refácil:</strong> The Refácil technical team reviews the results submitted by the integrator and verifies compliance with each item in the deck.</li>\n<li><strong>Stage 3 — Production enablement:</strong> Only integrators who successfully complete the test deck will be enabled to operate in the production environment.</li>\n</ul>\n<h4 id=\"test-deck-validation-types\">Test Deck Validation Types</h4>\n<ul>\n<li><strong>Successful service consumption</strong> — Verifies that the main flows (login, query, sale) respond with correct data, documented JSON structure, and response times within the defined threshold.</li>\n<li><strong>Error and rejection handling</strong> — Confirms that the integrator correctly interprets and handles HTTP error codes (400, 401, 403, 404, 500) and acts accordingly based on the response message.</li>\n<li><strong>Expired token and renewal</strong> — Validates that Bearer token expiration is detected and that re-authentication is performed automatically and securely, without persisting credentials in code or logs.</li>\n<li><strong>Transaction queries</strong> — Verifies that queries return complete information, that each transaction has a unique and traceable ID, and that receipts comply with the established guidelines.</li>\n<li><strong>Retries and timeout scenarios</strong> <em>(if applicable to the enabled product)</em> — Verifies that retries do not generate duplicate transactions (idempotency) and that concurrency is handled correctly.</li>\n<li><strong>Authentication and security validation</strong> — Confirms that the connection is exclusively via HTTPS/TLS, that tokens are not exposed in logs, and that payloads comply with the required data types and formats.</li>\n</ul>\n<h4 id=\"official-checklist\">Official Checklist</h4>\n<p>The complete deck with all validation items is available at the following link:</p>\n<p><a href=\"https://refacil01-my.sharepoint.com/:x:/r/personal/w_sarmiento_refacil_com/_layouts/15/Doc.aspx?sourcedoc=%7B1D0DDA77-D957-4A32-95E9-014B0FFF83D8%7D&amp;file=CheckList.xlsx&amp;action=default&amp;mobileredirect=true\">CheckList.xlsx</a></p>\n<hr />\n","_postman_id":"073e2b16-0e96-463a-8bb7-f1006eb6e5f3"},{"name":"auth","item":[{"name":"login-api","event":[{"listen":"test","script":{"exec":["var json = JSON.parse(responseBody);\r","pm.environment.set(\"tokenLogin\", json.data.token);\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"e95d13ed-f9cc-40f3-a25b-b8244e8cde2c","request":{"method":"POST","header":[],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/auth/login-api","description":"<hr />\n<h1 id=\"api-login\">API Login</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Allows API users to log in using their credentials. This operation authenticates the user with the information provided in the request body. If the credentials are valid, an access token is issued, which must be included in subsequent requests to access protected resources on the platform. The token must be sent in the <code>Authorization</code> header using the <code>Bearer</code> prefix. The response includes the token type (<code>Bearer</code>) and the access token.</p>\n<h3 id=\"rate-limiting\">Rate limiting</h3>\n<p>To prevent abuse and repeated attempts in a short period, this endpoint applies rate limiting:</p>\n<ul>\n<li><strong>Per IP</strong>: maximum <strong>5 requests per minute</strong> from the same IP address.  </li>\n<li><strong>Per user</strong>: maximum <strong>5 requests every 5 minutes</strong> for the same user.  </li>\n<li><strong>Combined user + IP</strong>: maximum <strong>5 requests per minute</strong> for the same user–IP combination.</li>\n</ul>\n<p>If these limits are exceeded, the API will temporarily reject additional calls, effectively asking the client to <strong>wait a moment before trying again</strong>.</p>\n<h3 id=\"token-expiration\">Token expiration</h3>\n<p>The access token <strong>expires 2 hours after it is issued</strong>, regardless of activity. <strong>Expiry is calculated from the moment of login, not from idle time.</strong> Making subsequent authenticated requests does <strong>not</strong> reset or extend the expiration window. Integrations must re-authenticate after <strong>2 hours</strong> from the last successful login call, or treat auth errors as described in <strong>Integration guidance</strong>.</p>\n<h3 id=\"integration-guidance\">Integration guidance</h3>\n<p>When a protected request fails because the token is <strong>invalid or expired</strong> (including after an idle timeout), the API may respond with <strong>401 Unauthorized</strong> or <strong>403 Forbidden</strong> (or another documented authentication error for this API). <strong>Call this login again</strong> to obtain a <strong>new</strong> token, update the <code>Authorization</code> header, and <strong>retry the original request once</strong>. Use a clear policy to avoid infinite loops: one login plus one retry per failed call is the standard pattern; if authentication still fails, stop retrying and investigate credentials, user blocking, or rate limits.</p>\n<hr />\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><code>username</code> (string) <code>required</code> - Username for authentication.</p>\n</li>\n<li><p><code>secretKey</code> (string) <code>required</code> - Secret key for authentication</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><p><code>messageCode</code> (string) - Code for the message.</p>\n</li>\n<li><p><code>message</code> (string) - The message from the response.</p>\n</li>\n<li><p><code>data</code></p>\n<ul>\n<li><p><code>tokenType</code> (string) - Type of the token (e.g., \"Bearer\").</p>\n</li>\n<li><p><code>token</code> (string) - Bearer access token. It expires <strong>2 hours after being issued</strong>, regardless of activity (see <strong>Token expiration</strong>).</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<blockquote>\n<p>Only the first validation error is returned per request. Validation errors (400) come from the API layer; business errors (400) are returned by the authentication service. </p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.username.required</code></td>\n<td><code>El campo username es obligatorio.</code></td>\n<td><code>username</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.username.isString</code></td>\n<td><code>El campo username debe ser de tipo string</code></td>\n<td><code>username</code> is not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.username.isNotEmpty</code></td>\n<td><code>El campo username no puede estar vacío.</code></td>\n<td><code>username</code> is empty or whitespace-only</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.secretKey.required</code></td>\n<td><code>El campo secretKey es obligatorio.</code></td>\n<td><code>secretKey</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.secretKey.isString</code></td>\n<td><code>El campo secretKey debe ser de tipo string</code></td>\n<td><code>secretKey</code> is not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.secretKey.isNotEmpty</code></td>\n<td><code>El campo secretKey no puede estar vacío.</code></td>\n<td><code>secretKey</code> is empty or whitespace-only</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>auth.invalid</code></td>\n<td><code>Credenciales inválidas</code></td>\n<td>User does not exist or incorrect password</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>user.blocked</code></td>\n<td><code>Estás bloqueado</code></td>\n<td>User is blocked — do not retry; contact support (body may include <code>notify: true</code>)</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>auth.invalid.TimeOuthLoginFaild</code></td>\n<td><code>No se ha superado el tiempo de bloqueo por intentos</code></td>\n<td>Account temporarily locked after failed login attempts. Body includes <code>code: 5002</code> and optionally <code>diferentTimes</code> (minutes remaining before unlock)</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["auth","login-api"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"04b3acb9-da63-49cf-bbb0-13dd91c9bd38","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{serverNameCommerceApi}}/auth/login-api"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 19 Jun 2024 14:32:21 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"195"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c3-TvFZVOp5oekw0MwUIGdC1tDDX3Y\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"tokenType\": \"Bearer\",\n        \"token\": \"MTcxODgwNzU0MTgwMSQyYiQxMCRHV0hJMXVpd05BQ0VXNG41bzFDL2tPQ0YyVEsxN1FvcUNhWERJaVNjRFhDNS56U2tUQWgxMg==\"\n    }\n}"},{"id":"167122ed-a01e-4444-a1fa-7739db150903","name":"failed","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/auth/login-api"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 19 Jun 2024 14:34:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"75-bCVoiQZ19yh5OQtPS8kOaKdcgDg\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"auth.invalid\",\n    \"message\": \"Credenciales inválidas\",\n    \"code\": \"\",\n    \"timestamp\": 1718807641276\n}"},{"id":"9465607a-3d41-41b6-8c24-4a5ad7ccd157","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/auth/login-ap"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 19 Jun 2024 14:34:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"75-bCVoiQZ19yh5OQtPS8kOaKdcgDg\""}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"Authentication not found.\",\n  \"messageCode\": \"01\",\n  \"data\": {},\n  \"code\": \"string\",\n  \"errorCode\": \"string\",\n  \"statusCode\": 0,\n  \"timestamp\": 0\n}"},{"id":"91529ba0-b7e0-462a-a509-63474638aa77","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/auth/login-api"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 19 Jun 2024 14:34:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"75-bCVoiQZ19yh5OQtPS8kOaKdcgDg\""}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"Not found.\",\n  \"messageCode\": \"05\",\n  \"data\": {},\n  \"code\": \"string\",\n  \"errorCode\": \"string\",\n  \"statusCode\": 0,\n  \"timestamp\": 0\n}"},{"id":"9e4c6783-81d0-417f-8dcc-74ed1d3d6f3c","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true}],"body":{"mode":"raw","raw":"{\r\n    \"username\": \"{{username}}\",\r\n    \"secretKey\": \"{{secretKey}}\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/auth/login-api"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 19 Jun 2024 14:34:01 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"117"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"75-bCVoiQZ19yh5OQtPS8kOaKdcgDg\""}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"An unexpected error has occurred.\",\n  \"messageCode\": \"09\",\n  \"data\": {},\n  \"code\": \"string\",\n  \"errorCode\": \"string\",\n  \"statusCode\": 0,\n  \"timestamp\": 0\n}"}],"_postman_id":"e95d13ed-f9cc-40f3-a25b-b8244e8cde2c"}],"id":"c2fddc1d-ab69-4bc4-90c0-879d5bc0e742","_postman_id":"c2fddc1d-ab69-4bc4-90c0-879d5bc0e742","description":""},{"name":"products","item":[{"name":"list","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript"}}],"id":"e15dda32-5bab-47b8-beab-a8fa3be1d02a","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list","description":"<hr />\n<h1 id=\"retrieve-product-list\">Retrieve Product List</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Returns the catalog of products enabled for query and sale. Internally queries the products engine and filters internal categories (<code>bills</code>, <code>packages</code>). All products returned are available for use in subsequent query and sell operations.</p>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><code>messageCode</code> (string) - Response status code.</li>\n<li><code>message</code> (string) - Response message.</li>\n<li><code>data</code> (array)<ul>\n<li><code>id</code> (number) - Product or agreement identifier.</li>\n<li><code>categoryId</code> (number) - Category the product belongs to.</li>\n<li><code>name</code> (string) - Commercial name.</li>\n<li><code>needValidation</code> (boolean) - Indicates if the product requires activation steps.</li>\n<li><code>moduleId</code> (number) - Associated module in core.</li>\n<li><code>maxFixedTip</code> (number) - Maximum fixed tip allowed.</li>\n<li><code>description</code> (string) - Description visible to the commerce.</li>\n<li><code>amount</code> (number) - Fixed amount, if applicable.</li>\n<li><code>sort</code> (number) - Suggested sort order in catalogs.</li>\n<li><code>meta</code> (object) - Additional metadata from the products engine.</li>\n<li><code>image</code> (string) - URL of the product image.</li>\n<li><code>status</code> (string) - Product status (<code>enabled</code> / <code>disabled</code>).</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Database or service failure when retrieving products — retry; if it persists, notify support</td>\n</tr>\n<tr>\n<td>404</td>\n<td>—</td>\n<td><code>Not Found</code></td>\n<td>Blocked route — verify the URL</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","list"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"cc633613-6a74-44e3-9d35-d0c642da4d17","name":"success","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","type":"text","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": [\r\n    {\r\n      \"id\": 0,\r\n      \"categoryId\": 0,\r\n      \"name\": \"string\",\r\n      \"needValidation\": true,\r\n      \"moduleId\": 0,\r\n      \"maxFixedTip\": 0,\r\n      \"description\": \"string\",\r\n      \"amount\": 0,\r\n      \"sort\": 0,\r\n      \"meta\": {},\r\n      \"image\": \"https://assets.refacil.co/providers/claro.png\",\r\n      \"status\": \"string\"\r\n    }\r\n  ]\r\n}"},{"id":"3e188cf2-c95d-45f7-a9f9-54d427c74f02","name":"failed bad request","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","type":"text","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"4d28f3cd-8b17-4104-9c43-7c0516a9566e","name":"failed unauthorized","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","type":"text","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"a745a27a-42f3-4fdd-8833-61f7c76bc3dc","name":"failed not found","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","type":"text","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"9c89c711-3f2e-4380-91e4-e9bddb4ce5d6","name":"failed internal server error","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","type":"text","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/list"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"e15dda32-5bab-47b8-beab-a8fa3be1d02a"},{"name":"packages","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript"}}],"id":"7e1708cb-f578-48b5-8e8b-57a1c6d58582","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages","description":"<hr />\n<h1 id=\"retrieve-available-packages\">Retrieve Available Packages</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Returns the list of configured packages (e.g., combos grouping several products). Useful for frontends that need to render hierarchies of categories → subcategories → products. Use this service to keep package data up to date.</p>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><code>messageCode</code> (string) - Response status code.</li>\n<li><code>message</code> (string) - Response message.</li>\n<li><code>data</code> (array)<ul>\n<li><code>id</code> (number) - Package or root category identifier.</li>\n<li><code>name</code> (string) - Commercial name of the package.</li>\n<li><code>description</code> (string) - Functional description.</li>\n<li><code>internalName</code> (string) - Internal name used for filtering.</li>\n<li><code>categories</code> (array) - List of subcategories.<ul>\n<li><code>id</code> (number) - Subcategory identifier.</li>\n<li><code>name</code> (string) - Subcategory name.</li>\n<li><code>description</code> (string) - Subcategory description.</li>\n<li><code>internalName</code> (string) - Internal name of the subcategory.</li>\n<li><code>products</code> (array) - Associated products (same structure as <code>/product/list</code>).</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Failure retrieving categories or products — retry; if it persists, notify support</td>\n</tr>\n<tr>\n<td>404</td>\n<td>—</td>\n<td><code>Not Found</code></td>\n<td>Blocked route — verify the URL</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","packages"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"a022425c-b15c-41bc-8279-f0d66f74118e","name":"success","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": [\r\n    {\r\n      \"id\": 0,\r\n      \"name\": \"string\",\r\n      \"description\": \"string\",\r\n      \"categories\": [\r\n        {\r\n          \"id\": 0,\r\n          \"name\": \"string\",\r\n          \"description\": \"string\",\r\n          \"products\": [\r\n            {\r\n              \"id\": 0,\r\n              \"categoryId\": 0,\r\n              \"name\": \"string\",\r\n              \"needValidation\": true,\r\n              \"moduleId\": 0,\r\n              \"maxFixedTip\": 0,\r\n              \"description\": \"string\",\r\n              \"amount\": 0,\r\n              \"sort\": 0,\r\n              \"meta\": {},\r\n              \"image\": \"https://assets.refacil.co/providers/claro.png\",\r\n              \"status\": \"string\"\r\n            }\r\n          ]\r\n        }\r\n      ],\r\n      \"internalName\": \"string\"\r\n    }\r\n  ]\r\n}"},{"id":"01244197-d9df-49f4-b759-fac2bd8d5439","name":"failed bad request","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"205f8dc0-efb5-40e3-b042-320fbf331e23","name":"failed unauthorized","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"6c9da8c8-5c16-4ce6-82bf-e12223737083","name":"failed not found","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"27f9f117-ad1b-4ec3-90a2-d12ed5625c46","name":"failed internal server error","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/packages"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"7e1708cb-f578-48b5-8e8b-57a1c6d58582"},{"name":"commissions","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript"}}],"id":"60fdcbde-e16e-44b4-9e4b-fa3bb487f2b6","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions","description":"<hr />\n<h3 id=\"retrieve-product-commissions\">Retrieve Product Commissions</h3>\n<hr />\n<h4 id=\"description\">Description</h4>\n<p>Retrieve detailed information about the commissions associated with registered products.</p>\n<hr />\n<h4 id=\"response\">Response</h4>\n<p>The response for this request is a JSON object with the following schema:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"type\": \"object\",\n  \"properties\": {\n    \"message\": {\"type\": \"string\"},\n    \"messageCode\": {\"type\": \"string\"},\n    \"data\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"id\": {\"type\": \"number\"},\n          \"name\": {\"type\": \"string\"},\n          \"image\": {\"type\": \"string\"},\n          \"fixedCommission\": {\"type\": \"object\"},\n          \"maxFixedCommission\": {\"type\": \"number\"},\n          \"commission\": {\"type\": \"number\"},\n          \"commissionType\": {\"type\": \"string\"},\n          \"amount\": {\"type\": \"object\"},\n          \"category\": {\"type\": \"string\"},\n          \"key\": {\"type\": \"string\"},\n          \"overdraft\": {\"type\": \"number\"}\n        }\n      }\n    }\n  }\n}\n\n</code></pre>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n<tr>\n<td>404</td>\n<td>—</td>\n<td><code>Not Found</code></td>\n<td>Blocked route — verify the URL</td>\n</tr>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Database or service failure when retrieving commissions — retry; if it persists, notify support</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","commissions"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"c21ea9ff-5f7f-4b09-adda-5a1a99f1f652","name":"success","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": [\r\n    {\r\n      \"id\": 0,\r\n      \"name\": \"string\",\r\n      \"image\": \"string\",\r\n      \"fixedCommission\": {},\r\n      \"maxFixedCommission\": 0,\r\n      \"commission\": 0,\r\n      \"commissionType\": \"string\",\r\n      \"amount\": {},\r\n      \"category\": \"string\",\r\n      \"key\": \"string\",\r\n      \"overdraft\": 0\r\n    }\r\n  ]\r\n}"},{"id":"4004ffae-e920-4fa6-ac8b-20b41dd2c2a3","name":"failed bad request","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"7faf0eb6-86c7-42c3-a9fb-3cbeea488a13","name":"failed unauthorized","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"3b13f530-10fc-4ff3-8f4e-8470c388cdd5","name":"failed not found","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"3ae5a941-4629-4ae8-b349-819976899c03","name":"failed internal server error","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/commissions"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"60fdcbde-e16e-44b4-9e4b-fa3bb487f2b6"},{"name":"categories","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript"}}],"id":"c9855342-d90a-4b1c-83ec-c78f72bd95c0","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories","description":"<hr />\n<h3 id=\"retrieve-product-categories\">Retrieve Product Categories</h3>\n<hr />\n<h4 id=\"description\">Description</h4>\n<p>This service provides detailed information on the categories and their subcategories.</p>\n<hr />\n<h4 id=\"response\">Response</h4>\n<p>The response for this request can be documented as a JSON schema:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"type\": \"object\",\n  \"properties\": {\n    \"message\": {\n      \"type\": \"string\"\n    },\n    \"messageCode\": {\n      \"type\": \"string\"\n    },\n    \"data\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"object\",\n        \"properties\": {\n          \"id\": {\n            \"type\": \"integer\"\n          },\n          \"name\": {\n            \"type\": \"string\"\n          },\n          \"description\": {\n            \"type\": \"string\"\n          },\n          \"categories\": {\n            \"type\": \"array\",\n            \"items\": {\n              \"type\": \"object\",\n              \"properties\": {\n                \"id\": {\n                  \"type\": \"integer\"\n                },\n                \"name\": {\n                  \"type\": \"string\"\n                },\n                \"description\": {\n                  \"type\": \"string\"\n                },\n                \"products\": {\n                  \"type\": \"array\",\n                  \"items\": {\n                    \"type\": \"object\",\n                    \"properties\": {\n                      \"id\": {\n                        \"type\": \"integer\"\n                      },\n                      \"categoryId\": {\n                        \"type\": \"integer\"\n                      },\n                      \"name\": {\n                        \"type\": \"string\"\n                      },\n                      \"needValidation\": {\n                        \"type\": \"boolean\"\n                      },\n                      \"moduleId\": {\n                        \"type\": \"integer\"\n                      },\n                      \"maxFixedTip\": {\n                        \"type\": \"integer\"\n                      },\n                      \"description\": {\n                        \"type\": \"string\"\n                      },\n                      \"amount\": {\n                        \"type\": \"integer\"\n                      },\n                      \"sort\": {\n                        \"type\": \"integer\"\n                      },\n                      \"meta\": {\n                        \"type\": \"object\"\n                      },\n                      \"image\": {\n                        \"type\": \"string\"\n                      },\n                      \"status\": {\n                        \"type\": \"string\"\n                      }\n                    },\n                    \"required\": [\n                      \"id\",\n                      \"categoryId\",\n                      \"name\",\n                      \"needValidation\",\n                      \"moduleId\",\n                      \"maxFixedTip\",\n                      \"description\",\n                      \"amount\",\n                      \"sort\",\n                      \"meta\",\n                      \"image\",\n                      \"status\"\n                    ]\n                  }\n                }\n              },\n              \"required\": [\n                \"id\",\n                \"name\",\n                \"description\",\n                \"products\"\n              ]\n            }\n          },\n          \"internalName\": {\n            \"type\": \"string\"\n          }\n        },\n        \"required\": [\n          \"id\",\n          \"name\",\n          \"description\",\n          \"categories\",\n          \"internalName\"\n        ]\n      }\n    }\n  },\n  \"required\": [\n    \"message\",\n    \"messageCode\",\n    \"data\"\n  ]\n}\n\n</code></pre>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n<tr>\n<td>404</td>\n<td>—</td>\n<td><code>Not Found</code></td>\n<td>Blocked route — verify the URL</td>\n</tr>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Database or service failure when retrieving categories — retry; if it persists, notify support</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","categories"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"cbdecd68-275b-41e8-9ee6-440d318d40fa","name":"success","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": [\r\n    {\r\n      \"id\": 0,\r\n      \"name\": \"string\",\r\n      \"description\": \"string\",\r\n      \"categories\": [\r\n        {\r\n          \"id\": 0,\r\n          \"name\": \"string\",\r\n          \"description\": \"string\",\r\n          \"products\": [\r\n            {\r\n              \"id\": 0,\r\n              \"categoryId\": 0,\r\n              \"name\": \"string\",\r\n              \"needValidation\": true,\r\n              \"moduleId\": 0,\r\n              \"maxFixedTip\": 0,\r\n              \"description\": \"string\",\r\n              \"amount\": 0,\r\n              \"sort\": 0,\r\n              \"meta\": {},\r\n              \"image\": \"https://assets.refacil.co/providers/claro.png\",\r\n              \"status\": \"string\"\r\n            }\r\n          ]\r\n        }\r\n      ],\r\n      \"internalName\": \"string\"\r\n    }\r\n  ]\r\n}"},{"id":"6a541004-4555-4c0d-b300-b35818c5d165","name":"failed bad request","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"49b6a437-7ac3-46af-85f0-8941777a9dd0","name":"failed unauthorized","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"e5b4804e-a989-4073-93c2-4116cd9b92df","name":"failed not found","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"3750fe38-aece-4cc8-8dff-2cacb679a40b","name":"failed internal server error","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/product/categories"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"c9855342-d90a-4b1c-83ec-c78f72bd95c0"},{"name":"search","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript"}}],"id":"7a4bc995-c8e0-43eb-834c-2b9826df2453","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search","description":"<hr />\n<h3 id=\"search-product\">Search Product</h3>\n<hr />\n<h4 id=\"description\">Description</h4>\n<p>Allows searching for invoice agreements on the platform using specific terms. Send the request body with the necessary parameters in the format specified by the SearchBody object. The operation returns results that match the provided search terms.</p>\n<hr />\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p>The request body should be in JSON format with the following parameter:</p>\n<ul>\n<li><code>query</code>: The search term.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h4 id=\"response\">Response</h4>\n<p>The response will be a JSON object with the following properties:</p>\n<ul>\n<li><p><code>message</code>: A message related to the response.</p>\n</li>\n<li><p><code>messageCode</code>: A code related to the message.</p>\n</li>\n<li><p><code>data</code>: An array of objects containing product information with the following properties:</p>\n<ul>\n<li><p><code>id</code>: The ID of the product.</p>\n</li>\n<li><p><code>name</code>: The name of the product.</p>\n</li>\n<li><p><code>key</code>: The key of the product.</p>\n</li>\n<li><p><code>productId</code>: The ID of the product.</p>\n</li>\n<li><p><code>needsAmountInQuery:</code> Boolean value that indicates wheter the invoice value should be include in the query.</p>\n</li>\n<li><p><code>form:</code> Array of objects that shows me the necessary references to consult the invoice. In case it arrives empty you must send a reference of preference.</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.query.required</code></td>\n<td><code>El campo query es obligatorio.</code></td>\n<td><code>query</code> field is absent from the request body</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.query.isString</code></td>\n<td><code>El campo query debe ser de tipo string</code></td>\n<td><code>query</code> is not a string</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n<tr>\n<td>404</td>\n<td>—</td>\n<td><code>Not Found</code></td>\n<td>Blocked route — verify the URL</td>\n</tr>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Database or service failure when searching products — retry; if it persists, notify support</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","search"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"454ce1b7-c363-4689-9988-2a8089cca622","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Operation successful.\",\r\n    \"messageCode\": \"00\",\r\n    \"data\": [\r\n        {\r\n            \"id\": 0,\r\n            \"name\": \"string\",\r\n            \"key\": \"string\",\r\n            \"productId\": 0,\r\n            \"providerId\": 0,\r\n            \"needsAmountInQuery\": false,\r\n            \"form\": [\r\n                {\r\n                    \"active\": true,\r\n                    \"type\": \"text\",\r\n                    \"label\": \"Codigo Del Inmueble\",\r\n                    \"placeholder\": \"Ingrese su Codigo Del Inmueble\",\r\n                    \"legend\": \"Codigo Del Inmueble\",\r\n                    \"value\": \"reference\",\r\n                    \"required\": true\r\n                },\r\n                {\r\n                    \"active\": true,\r\n                    \"type\": \"text\",\r\n                    \"label\": \"Codigo Del Inmueble\",\r\n                    \"placeholder\": \"Ingrese su Codigo Del Inmueble\",\r\n                    \"legend\": \"Codigo Del Inmueble\",\r\n                    \"value\": \"reference2\",\r\n                    \"required\": true\r\n                }\r\n            ]\r\n        }\r\n    ]\r\n}"},{"id":"04e42325-ea1c-4afa-8e70-c067815d1d56","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"bfa5df8a-436a-4572-b2c1-2a6389c78410","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"f0176bb0-e8f7-40fd-bba7-f9c810b3574d","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"2b6a40b1-86b5-48da-aa02-2f40bceb4d68","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"query\": \"enel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/search"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"7a4bc995-c8e0-43eb-834c-2b9826df2453"},{"name":"query","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}},{"listen":"prerequest","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"8996d8aa-3954-4dd1-bdba-d301e1c4b7d3","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h1 id=\"query-product\">Query Product</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Performs the pre-sale query to obtain invoice data, reference, hash, and amount. Communicates with the Movement service. The returned <code>hash</code> and <code>hashEchoData</code> values must be forwarded in the subsequent sell request when paying bills. If the response contains only one of the two hash fields, the API automatically mirrors it to the other.</p>\n<p>It is important that when the request fails with the errorCode <code>product.errors.disabled</code> or similar indicating that the product is inactive, the agreements are consulted again using the search service.</p>\n<hr />\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><code>productId</code> (number) <code>required</code> - Identifier of the product to query.</li>\n<li><code>queryType</code> (string) <code>required</code> - Type of query expected by Movement (e.g., <code>BILLData</code>). Min length: 1.</li>\n<li><code>ownAgreementId</code> (number) - Identifier of the own agreement, if applicable.</li>\n<li><code>data</code> (object) - Specific provider data (reference, cellphone, etc.). Technically optional, but required by most products at the business level.<ul>\n<li><code>reference</code> (string) - Invoice or reference number to query. Used for bill products.</li>\n<li><code>cellphone</code> (string) - Destination phone number. Used for top-ups and packages.</li>\n<li><code>plate</code> (string) - Vehicle plate. Used for SOAT products.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><code>messageCode</code> (string) - Response status code.</li>\n<li><code>message</code> (string) - Response message.</li>\n<li><code>data</code> (object)<ul>\n<li><code>amount</code> (number) - Calculated amount for the sale.</li>\n<li><code>productId</code> (number) - Identifier of the queried product.</li>\n<li><code>productName</code> (string) - Product name.</li>\n<li><code>reference</code> (string) - Reference to be forwarded in the sell request.</li>\n<li><code>hash</code> (string) - Hash generated by Movement. Mirror of <code>hashEchoData</code> if absent.</li>\n<li><code>hashEchoData</code> (string) - Mirror hash field. Mirror of <code>hash</code> if absent.</li>\n<li><code>amountEditable</code> (boolean) - Indicates if the amount can be modified at sell time.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.productId.number</code></td>\n<td><code>El campo productId debe ser de tipo Numerico</code></td>\n<td><code>productId</code> is absent or not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.required</code></td>\n<td><code>El campo queryType es obligatorio.</code></td>\n<td><code>queryType</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isString</code></td>\n<td><code>El campo queryType debe ser de tipo string</code></td>\n<td><code>queryType</code> is not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isNotEmpty</code></td>\n<td><code>El campo queryType no puede estar vacío.</code></td>\n<td><code>queryType</code> is empty or whitespace-only</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>data must be an object</code></td>\n<td><code>data</code> is present but not an object</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>ownAgreementId must be a number</code></td>\n<td><code>ownAgreementId</code> is present but not a number</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.notFound</code> / <code>product.not.found</code></td>\n<td><code>Producto no encontrado</code></td>\n<td>Product does not exist or is unavailable</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.disabled</code></td>\n<td><code>Producto deshabilitado</code></td>\n<td>Product is disabled — re-fetch agreements using the search service</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.providers.notFound</code></td>\n<td><code>El producto no tiene un proveedor.</code></td>\n<td>No provider associated with the product</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.metadata.invalid</code></td>\n<td><code>Los metadatos del convenio no tienen un formato válido</code></td>\n<td>Agreement metadata is invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>overdue.reference</code></td>\n<td><code>Esta referencia ya se encuentra vencida.</code></td>\n<td>Reference is overdue — do not retry with same reference</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>closed.reference</code></td>\n<td><code>Esta referencia ya se encuentra cerrada.</code></td>\n<td>Reference is closed</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"88c426e2-8b04-4203-ae72-e90fa035aeff","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Operation successful.\",\r\n    \"messageCode\": \"00\",\r\n    \"data\": {\r\n        \"payload\": {\r\n            \"amount\": 57246,\r\n            \"productId\": 52204,\r\n            \"productName\": \"ACUEDUCTO DE BOGOTA\",\r\n            \"reference\": \"123456\",\r\n            \"hashEchoData\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n            \"hash\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n            \"amountEditable\": true\r\n        }\r\n    }\r\n}"},{"id":"684f2cf3-583a-41ac-b32b-205b93ad7558","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"a1df4c15-68c6-4597-9258-f5210b18c7f2","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"30b498a4-c9a6-41d5-9b92-a4132be5bda9","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"c2903612-5ee8-482d-861a-2ac133931ac0","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"8996d8aa-3954-4dd1-bdba-d301e1c4b7d3"},{"name":"query | Claro Telefonia","event":[{"listen":"test","script":{"exec":["var json = JSON.parse(responseBody);\r","\r","pm.environment.set(\"hash\", json.data.payload.hash);\r","pm.environment.set(\"hashEchoData\", json.data.payload.hashEchoData);\r",""],"type":"text/javascript"}}],"id":"57e4aca1-7399-4176-80ea-4cb12143d809","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h3 id=\"product-query\">Product Query</h3>\n<hr />\n<h4 id=\"description\">Description</h4>\n<p>Allows performing a custom query on the platform. Send the request body with the necessary parameters for the query in the format specified by the QueryBody object. The response will include the results of the query in case of success.</p>\n<hr />\n<p><strong>Request Body:</strong></p>\n<ul>\n<li><p><code>productId</code> (integer, required): Identifier of the product to perform the query.</p>\n</li>\n<li><p><code>queryType</code> (string, required): The type of query to be performed.</p>\n</li>\n<li><p><code>ownAgreementId</code> (string, optional): Identifier of the own agreement, if applicable.</p>\n</li>\n<li><p><code>data</code> (object, required): Additional data for the query in object format.</p>\n<ul>\n<li><code>reference</code> (string, required): The reference for the query data.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<p><strong>Response JSON Schema:</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    \"type\": \"object\",\n    \"properties\": {\n        \"message\": {\n            \"type\": \"string\"\n        },\n        \"messageCode\": {\n            \"type\": \"string\"\n        },\n        \"data\": {\n            \"type\": \"object\",\n            \"properties\": {\n                \"payload\": {\n                    \"type\": \"object\",\n                    \"properties\": {\n                        \"amount\": {\n                            \"type\": \"integer\"\n                        },\n                        \"productId\": {\n                            \"type\": \"integer\"\n                        },\n                        \"productName\": {\n                            \"type\": \"string\"\n                        },\n                        \"reference\": {\n                            \"type\": \"string\"\n                        },\n                        \"hashEchoData\": {\n                            \"type\": \"string\"\n                        },\n                        \"hash\": {\n                            \"type\": \"string\"\n                        },\n                        \"amountEditable\": {\n                            \"type\": \"boolean\"\n                        }\n                    }\n                }\n            }\n        }\n    }\n}\n\n</code></pre>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"72abcdce-b1d2-4ca9-8539-404cb95f4891","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"payload\": {\r\n      \"amount\": 50600,\r\n      \"productId\": 52683,\r\n      \"productName\": \"Claro Hogar\",\r\n      \"reference\": \"123456\",\r\n      \"hashEchoData\": \"asdasdasd\",\r\n      \"hash\": \"xcgZ7Cri5EPqfZbLUWG8SiZ0qoxvchAT\",\r\n      \"amountEditable\": true\r\n    }\r\n  }\r\n}"},{"id":"196c5d6d-80f5-4a48-8293-bb2256e945c9","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"a5f1f263-568b-4b1f-b573-6c4c3ca59d72","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"b8a8ce47-b12c-44a2-81f3-f5f2eebd71f7","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"d6603b3a-ed8e-4ae5-9210-97de2d862446","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"123456\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"57e4aca1-7399-4176-80ea-4cb12143d809"},{"name":"query | Acueducto de Bogota","event":[{"listen":"test","script":{"exec":["var json = JSON.parse(responseBody);\r","\r","pm.environment.set(\"hash\", json.data.payload.hash);\r","pm.environment.set(\"hashEchoData\", json.data.payload.hashEchoData);\r",""],"type":"text/javascript","packages":{}}},{"listen":"prerequest","script":{"exec":[],"type":"text/javascript"}}],"id":"54cfd6d9-e9f6-4a3d-8491-d269aab8623a","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h3 id=\"http-post-productquery\">HTTP POST /product/query</h3>\n<hr />\n<h4 id=\"description\">Description</h4>\n<p>Allows performing a custom query on the platform.</p>\n<hr />\n<h4 id=\"request-body\">Request Body</h4>\n<ul>\n<li><p>raw (application/json)</p>\n<ul>\n<li><p>productId (number, <code>required</code>): Identifier of the product to perform the query.</p>\n</li>\n<li><p>queryType (string. <code>required</code>): Additional data for the query in object format.</p>\n</li>\n<li><p>ownAgreementId (number, <code>optional</code>): Identifier of the own agreement, if applicable</p>\n</li>\n<li><p>data (object): Additional data for the query in object format.</p>\n<ul>\n<li>reference (string): Reference data.</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h4 id=\"response\">Response</h4>\n<p>The response will include the results of the query in case of success.</p>\n<h4 id=\"response-schema\">Response Schema</h4>\n<ul>\n<li><p>message (string): The message from the response.</p>\n</li>\n<li><p>messageCode (string): The code related to the message.</p>\n</li>\n<li><p>data (object)</p>\n<ul>\n<li><p>payload (object)</p>\n<ul>\n<li><p>amount (number): The amount related to the query result.</p>\n</li>\n<li><p>productId (number): The ID of the product related to the query result.</p>\n</li>\n<li><p>productName (string): The name of the product related to the query result.</p>\n</li>\n<li><p>reference (string): The reference related to the query result.</p>\n</li>\n<li><p>hashEchoData (string): The echoed hash data.</p>\n</li>\n<li><p>hash (string): The hash data.</p>\n</li>\n<li><p>amountEditable (boolean): Indicates whether the amount is editable or not.</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p>code (string): The code from the response.</p>\n</li>\n<li><p>errorCode (string): The error code from the response.</p>\n</li>\n<li><p>statusCode (number): The status code from the response.</p>\n</li>\n<li><p>timestamp (number): The timestamp of the response.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"80fa4ab7-c921-4b87-b6be-4475fa57cf6c","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"payload\": {\r\n      \"amount\": 57246,\r\n      \"productId\": 52204,\r\n      \"productName\": \"ACUEDUCTO DE BOGOTA\",\r\n      \"reference\": \"123456\",\r\n      \"hashEchoData\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n      \"hash\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n      \"amountEditable\": true\r\n    }\r\n  }\r\n}"},{"id":"4d586a6f-996b-487e-ba67-d49944d2be88","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"2ea2a218-6ce1-4f13-9818-d93a0d3314e7","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"fa3a9ac4-20e5-413d-92bf-2af758df6798","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"payload\": {\r\n      \"amount\": 57246,\r\n      \"productId\": 52204,\r\n      \"productName\": \"ACUEDUCTO DE BOGOTA\",\r\n      \"reference\": \"123456\",\r\n      \"hashEchoData\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n      \"hash\": \"eyJ2YWxvcl9leHRyYTEiOiIxfDE4fDAwMDAwNTcyNDYwMHwzOCIsInZhbG9yX2V4dHJhMiI6IjU2ODU4fDU2ODQ3fDB8MHwwfDB8MCIsImZpeGVkVmFsdWUiOiIxIiwiYWdyZWVtZW50IjoiMTgiLCJhbW91bnQiOiIwMDAwMDU3MjQ2MDAiLCJyZWZlcmVuY2UiOiIxMjM0NTYiLCJ0ZXJtaW5hbElkIjoiMTAxMCJ9\",\r\n      \"amountEditable\": true\r\n    }\r\n  }\r\n}"},{"id":"25a99024-45d8-43b7-8576-42aaae21e67a","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52204,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"54cfd6d9-e9f6-4a3d-8491-d269aab8623a"},{"name":"query | Convenio Vendo","event":[{"listen":"test","script":{"exec":["var json = JSON.parse(responseBody);\r","\r","pm.environment.set(\"hash\", json.data.payload.hash);\r","pm.environment.set(\"hashEchoData\", json.data.payload.hashEchoData);\r",""],"type":"text/javascript","packages":{}}}],"id":"3e020594-9674-438c-af75-6af8dfb0c2af","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h3 id=\"description\">Description</h3>\n<p>This HTTP POST request is used to perform a custom query on the platform. The request body should be sent with the necessary parameters for the query in the format specified by the QueryBody object. The response will include the results of the query in case of success.</p>\n<hr />\n<h3 id=\"request-body-schema\">Request Body Schema</h3>\n<ul>\n<li><p>productId (number) <code>required</code>: Identifier of the product to perform the query.</p>\n</li>\n<li><p>queryType (string) <code>required</code>: Type of query to be performed.</p>\n</li>\n<li><p>ownAgreementId (null): Identifier of the own agreement, if applicable.</p>\n</li>\n<li><p>data (object) <code>required</code>: Additional data for the query.</p>\n<ul>\n<li>reference (string) <code>required</code>: Reference for the query.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"response-body-schema\">Response Body Schema</h3>\n<ul>\n<li><p>message (string): Response message.</p>\n</li>\n<li><p>messageCode (string): Code related to the response message.</p>\n</li>\n<li><p>data (object): Response data object.</p>\n<ul>\n<li><p>payload (object): Payload data.</p>\n<ul>\n<li><p>amount (number): Amount related to the product.</p>\n</li>\n<li><p>productId (number): ID of the product.</p>\n</li>\n<li><p>productName (string): Name of the product.</p>\n</li>\n<li><p>reference (string): Reference related to the query.</p>\n</li>\n<li><p>hashEchoData (string): Hash echo data.</p>\n</li>\n<li><p>hash (string): Hash value.</p>\n</li>\n<li><p>amountEditable (boolean): Indicates if the amount is editable.</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"76f611d6-4f1c-4143-8746-afd84e1a6d25","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"payload\": {\r\n      \"amount\": 0,\r\n      \"productId\": 0,\r\n      \"productName\": \"string\",\r\n      \"reference\": \"string\",\r\n      \"hashEchoData\": \"string\",\r\n      \"hash\": \"string\",\r\n      \"amountEditable\": true\r\n    }\r\n  }\r\n}"},{"id":"027b0dd3-2689-4c8b-a7e0-ae26bcbd185c","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"6c5c7599-2d75-4ff5-93cc-f9fd74c59c11","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"d709f794-bf4a-4e0f-8a8c-cc2ae8bfb54a","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"e8d2dedf-9ef0-478a-8a6c-c43276457dae","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1100000,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": 562,\r\n    \"data\": {\r\n        \"reference\": \"betagdq\"\r\n    }    \r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"3e020594-9674-438c-af75-6af8dfb0c2af"}],"id":"8d01bab8-1dbd-49b8-a1c4-4e40714b50f5","_postman_id":"8d01bab8-1dbd-49b8-a1c4-4e40714b50f5","description":""},{"name":"sales","item":[{"name":"sell","item":[{"name":"Bills","item":[{"name":"PROSEGUR GPS BGTA","item":[{"name":"query","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"34a1f47f-77be-4f63-beac-10ceed98cb41","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1587,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"63440172\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<p><strong>Important:</strong> This request will be processed within a timeout of <strong>30,000 milliseconds (30 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"0567c65b-cccf-46aa-8da8-d173044fd68e","name":"Valid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62540210\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:14:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1020"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"3fc-08/BQd1GoTgQFWomzneceJEUUvU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1773101286314,\n        \"payload\": {\n            \"amount\": 9999,\n            \"productId\": 2010910,\n            \"productName\": \"Facturas Otros SP\",\n            \"reference\": \"63440172\",\n            \"reference2\": null,\n            \"hashEchoData\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\",\n            \"amountEditable\": false,\n            \"hash\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\"\n        }\n    }\n}"},{"id":"148f323d-a7a5-458c-83af-9fb02db25785","name":"Invalid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"63440172\" \r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:20:35 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"142"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"8e-79rXl2moVmD3ZT3SgdvPXJ6Sb+U\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Número de obligación o de factura inválido o no existe.\",\n    \"timestamp\": 1718043635033\n}"},{"id":"9f1df544-cc61-4d76-9f6f-59d270162a76","name":"Reference already paid","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62970322\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:19:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"111"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"6f-3dDmq8rugT3rKm4gar26pe6UYMw\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Este pago ya fue realizado.\",\n    \"timestamp\": 1718043587188\n}"}],"_postman_id":"34a1f47f-77be-4f63-beac-10ceed98cb41"},{"name":"sell","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"ea749db2-c3e9-4aec-8a42-bd7cd5e5821d","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"amount\": 9999,\r\n    \"productId\": 1587,\r\n    \"hash\": null,\r\n    \"sellType\": \"Bill\",\r\n    \"data\": {\r\n        \"agreement\": 2010910,\r\n        \"reference\": \"63440172\",\r\n        \"cellphone\": \"3203550000\",\r\n        \"hashEchoData\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>amount</code>: Number representing the amount of the payment (required)</p>\n</li>\n<li><p><code>sellType</code>: String indicating the type of the sell operation (required)</p>\n</li>\n<li><p><code>hash</code>: String containing the hash value for the operation (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><p><code>reference</code>: String containing the reference number for the payment (required)</p>\n</li>\n<li><p><code>cellphone</code>: String containing the cellphone number associated with the payment (required)</p>\n</li>\n<li><p><code>hashEchoData</code>: String containing the hash echo data for the operation (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"6b589694-ed34-4746-bebd-13ff59994387","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"messageCode\": \"00\",\r\n    \"message\": \"Operation successful.\",\r\n    \"data\": {\r\n        \"statusCode\": 200,\r\n        \"message\": \"Transacción Exitosa\",\r\n        \"date\": 1773101325876,\r\n        \"payload\": {\r\n            \"preBalance\": null,\r\n            \"posBalance\": \"$2,043,766,708.00\",\r\n            \"tmpBalance\": \"$48,981.40\",\r\n            \"debt\": 0,\r\n            \"billData\": {\r\n                \"fields\": [\r\n                    {\"label\": \"Estado de la Transacción\", \"value\": \"TRANSACCION EXITOSA.\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Fecha\", \"value\": \"2026-03-09\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Hora\", \"value\": \"19:08:45\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"ID Transacción proveedor\", \"value\": \"1000114470\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"ID Transacción\", \"value\": \"5121\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Codigo Autorización\", \"value\": \"XX-authorizationCode\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"ID comercio\", \"value\": \"540660\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Terminal\", \"value\": \"383467\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"ID punto de venta\", \"value\": \"348133\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Tipo de Operación\", \"value\": \"Recaudo\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Convenio\", \"value\": \"PROSEGUR GPS\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Cod. Convenio\", \"value\": \"1998\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Referencia 1\", \"value\": \"63440172\", \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Referencia 2\", \"value\": null, \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Banco\", \"value\": \"BANCO OCCIDENTE\", \"type\": null, \"labelLink\": null}\r\n                ],\r\n                \"costs\": [\r\n                    {\"label\": \"Valor\", \"value\": 9999, \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Costo\", \"value\": 0, \"type\": null, \"labelLink\": null},\r\n                    {\"label\": \"Total\", \"value\": 9999, \"type\": null, \"labelLink\": null}\r\n                ],\r\n                \"messages\": [\r\n                    {\"value\": \"Línea de atención Nacional \\n01 8000 512825 Opción 2 Email:\\ncorresponsalesaval@ventasyservicios.com.co\\n\\nBANCO DE OCCIDENTE\\nVIGILADO SUPERINTENDENCIA \\nFINANCIERA DE COLOMBIA\"}\r\n                ],\r\n                \"headers\": [\r\n                    {\"label\": null, \"value\": \"https://storage.googleapis.com/bucket-faas/tickets/aval.png\", \"type\": \"img\"},\r\n                    {\"label\": null, \"value\": \"CORRESPONSAL BANCARIO \\nBANCO DE OCCIDENTE  SA\\n\\n\\nPAGO DE FACTURAS\", \"type\": null}\r\n                ],\r\n                \"links\": [],\r\n                \"share\": {\r\n                    \"cellphone\": \"3203550000\",\r\n                    \"message\": \"¡Hola!, has comprado (Facturas Otros SP) por valor de $9999, este es el código de la venta 475575864. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348133/475575864\"\r\n                },\r\n                \"paymentOrderItems\": null\r\n            },\r\n            \"isPending\": null,\r\n            \"sale\": {\r\n                \"id\": 475575864,\r\n                \"userId\": 348133,\r\n                \"amount\": 9999,\r\n                \"serviceNumber\": \"63440172\",\r\n                \"status\": 1,\r\n                \"productId\": 2010910,\r\n                \"createdAt\": \"2026-03-10T00:08:44.000Z\",\r\n                \"transactionId\": 1000114470,\r\n                \"extra\": \"{\\\"productName\\\":\\\"Producto desconocido\\\",\\\"transactionId\\\":1000114470,\\\"trace\\\":\\\"5121\\\",\\\"talon\\\":\\\"XX-authorizationCode\\\",\\\"comercio\\\":\\\"540660\\\",\\\"terminal\\\":\\\"383467\\\",\\\"reference\\\":\\\"63440172\\\"}\"\r\n            }\r\n        }\r\n    }\r\n}"},{"id":"129b3d50-189e-43e2-9f4c-63bd8aca5d37","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"f27ceaa3-6fa5-4de9-8851-be1deaa78de7","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"9182bbe7-0029-44d8-bf87-e8b315348e50","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"5ebf46d7-a6e4-4db0-8724-c47480e2948f","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"c9382786-3e22-478f-a723-542cb1564717","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"67481c60-6885-4469-a246-9c40b612d896","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"ea749db2-c3e9-4aec-8a42-bd7cd5e5821d"}],"id":"5de88e66-175c-40a2-b122-b1274372d7fe","_postman_id":"5de88e66-175c-40a2-b122-b1274372d7fe","description":""}],"id":"04e52c9f-e5e6-4f3d-b01a-138eea9f7a83","_postman_id":"04e52c9f-e5e6-4f3d-b01a-138eea9f7a83","description":""},{"name":"Insurance","item":[{"name":"Axa","item":[{"name":"query | AXA","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"dbf90399-5782-4cb9-b749-26669eeda8de","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"NAC854\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<p><code>Allows performing a custom query on the platform. Send the request body with the necessary parameters for the query in the format specified by the QueryBody object. The response will include the results of the query in case of success.</code></p>\n<p>Below is an example of a request for vehicle SOAT insurance. The following necessary data must be provided: productId (in this case, 91), queryType (in this case SOATData), type of document, document number, vehicle plate, and phone number.</p>\n<p><strong>Note:</strong></p>\n<p>It is important to remember that in the response of this product, several of its data points are crucial as they must be sent in the service that performs the sale (/sells/sell). The necessary data are as follows: amount, cifrateAmount, and hashEchoData.</p>\n<p>Below are the valid document types for the consultation process:</p>\n<ul>\n<li><p>CC: Cédula de ciudadanía</p>\n</li>\n<li><p>CE: Cédula de extranjería</p>\n</li>\n<li><p>NIT: Número de identificación tributaria</p>\n</li>\n<li><p>PS: Pasaporte</p>\n</li>\n<li><p>RC: Registro civil</p>\n</li>\n<li><p>TI: Tarjeta de identidad</p>\n</li>\n<li><p>CD: Carné diplomático</p>\n</li>\n</ul>\n<h3 id=\"payload-for-custom-query\">Payload for Custom Query</h3>\n<p>The following payload is required for performing a custom query:</p>\n<ul>\n<li><p><code>queryType</code>: (string, required) Specifies the type of query to be performed.</p>\n</li>\n<li><p><code>productId</code>: (number, required) Identifies the product for which the query is being made.</p>\n</li>\n<li><p><code>docType</code>: (string, required) Specifies the type of document being used for identification.</p>\n</li>\n<li><p><code>document</code>: (string, required) The document number for identification purposes.</p>\n</li>\n<li><p><code>cellphone</code>: (string, required) The phone number associated with the query.</p>\n</li>\n<li><p><code>license</code>: (string, optional) The license plate of the vehicle.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"edbc065a-ff97-4122-9ea0-a89768c30bad","name":"200 OK","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY833\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:28:08 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1299"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"513-SMjBTK6JYQhvQxCIRhazJt3laDU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1716915301189,\n        \"payload\": {\n            \"message\": \"ok\",\n            \"canPayWithLoan\": false,\n            \"cifrateAmount\": {\n                \"hash\": \"eyJhbW91bnQiOjkwODgwMH0=\",\n                \"hashEchoData\": \"ec0068253f0777fc641022340ef6c5e38342b17a468035d3e8ad5ab3876296e1641fec8fc57b048c93efb3fc2dc5c121627f15250cd27a1a8803fac7d393aec9\"\n            },\n            \"vehDescription\": \"CHEVROLET NPR\",\n            \"amount\": {\n                \"amount\": 907800,\n                \"runt\": 2100,\n                \"prima\": 595900,\n                \"contributions\": 309800,\n                \"valueDiscountLaw\": 0,\n                \"valueDiscountTotal\": 0,\n                \"valuePayDiscount\": 907800,\n                \"amountAdministrative\": 1000,\n                \"amountTotal\": 908800,\n                \"dateStart\": \"2024-05-28\",\n                \"dateEnd\": \"2025-05-27\",\n                \"discount\": 0\n            },\n            \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiZGExM2ZlZmYtOTQyMi00YzcwLTgzZjAtMjJjNmMzMTFiNDY2IiwiaWRDb3JyZWxhY2lvbiI6MTcxNjkxNTI3MjczNH0=\",\n            \"vehDetail\": {\n                \"hashEchoData\": \"\",\n                \"vehDescription\": \"CHEVROLET NPR\",\n                \"queryId\": \"da13feff-9422-4c70-83f0-22c6c311b466\",\n                \"noSerie\": \"N/A\",\n                \"noMotor\": \"487950\",\n                \"noChasis\": \"9GDNPR7199B014109\",\n                \"cc\": \"4570\",\n                \"type\": \"ESTACAS\",\n                \"gas\": \"DIESEL\",\n                \"year\": \"2009\",\n                \"passengers\": \"2\",\n                \"brand\": \"CHEVROLET\",\n                \"brandId\": \"N/A\",\n                \"lineCode\": \"N/A\",\n                \"service\": \"Público\",\n                \"zone\": \"N/A\",\n                \"weight\": \"4000\",\n                \"line\": \"NPR\",\n                \"cityId\": \"05266000\"\n            },\n            \"types\": [\n                {\n                    \"code\": \"N/A\",\n                    \"description\": \"N/A\"\n                }\n            ],\n            \"userDetail\": {\n                \"name\": \"INTERASEO\",\n                \"lastName\": \"S.A.S E.S.P\"\n            }\n        }\n    }\n}"},{"id":"d2519400-3827-4f81-96a5-af426987ef4e","name":"400 Bad Request | case 1","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"message\": \"Revise los datos ingresados. Puede comprobar directamente en la página del RUNT.\",\n    \"code\": \"001\",\n    \"timestamp\": 1717018990566\n}"},{"id":"240f1d30-3df4-4003-a6f8-2266a8058fba","name":"400 Bad Request | case 2","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\r\n    \"statusCode\": 400,\r\n    \"message\": \"En estos momentos no hay comunicación con la plataforma RUNT, puede intentar de nuevo más tarde o dirigirse a las oficinas de Axa Colpatria a nivel Nacional. Las cuales puede consultar en el siguiente enlace, https://www.axacolpatria.co/portalpublico-lf-red-de-oficinas\",\r\n    \"code\": \"001\",\r\n    \"timestamp\": 1717018990566\r\n}"},{"id":"1555297f-e0e8-4e72-b759-93ddf81f0b4a","name":"400 Bad Request | case 3","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"message\": \"Los Datos consultados [Cedula y Placa] no corresponden con los propietarios activos registrados en el RUNT\",\n    \"code\": \"001\",\n    \"timestamp\": 1717018990566\n}"},{"id":"391b4d15-7afe-4eba-9845-a701b0db58ee","name":"400 Bad Request | case 4","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\r\n    \"statusCode\": 400,\r\n    \"message\": \"La información de RUNT es incompleta y esto impide la cotización. El cliente debe verificar los datos que están registrados en el RUNT y realizar allí los respectivos ajustes. Puede hacer la consulta a través de los siguientes enlaces https://www.runt.com.co/consultaCiudadana/#/consultaPersona https://www.runt.com.co/consultaCiudadana/#/consultaVehiculo\",\r\n    \"code\": \"001\",\r\n    \"timestamp\": 1717018990566\r\n}"},{"id":"001ea952-4fdc-4dc6-9b51-f66a83dc9667","name":"400 Bad Request | case 5","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\r\n    \"statusCode\": 400,\r\n    \"message\": \"La fecha de inicio de vigencia supera 30 días de posterioridad\",\r\n    \"code\": \"001\",\r\n    \"timestamp\": 1717018990566\r\n}"},{"id":"fa3b96f5-521e-46a1-be6d-6ceb89aed4f6","name":"400 Bad Request | case 6","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"TMY8333\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 21:43:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"196"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"c4-Y/cN5LGxb7DNMcfec3pfsetkZL4\""}],"cookie":[],"responseTime":null,"body":"{\r\n    \"statusCode\": 400,\r\n    \"message\": \"Algún dato necesario para la emisión de la póliza presenta inconsistencia, puede dirigirse a las oficinas de AXA COLPATRIA a nivel Nacional. Las cuales las puede consultar en el siguiente enlace, https://www.axacolpatria.co/portalpublico-lf-red-de-oficinas\",\r\n    \"code\": \"001\",\r\n    \"timestamp\": 1717018990566\r\n}"},{"id":"48f159cd-6e9c-446a-bd49-68820cae7c17","name":"400 Bad Request | case 7","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"SOATData\",\r\n    \"productId\": 91,\r\n    \"docType\": \"NIT\",\r\n    \"document\": \"819000939\",\r\n    \"cellphone\": \"3200000000\",\r\n    \"license\": \"NAC854\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request | case 7","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 07 Jun 2024 15:32:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"331"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"14b-k5gjNMKh+W5h4OvED9haDP96SbY\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"“Ocurrió un error en esta transacción, por favor diríjase a cualquiera de nuestras sucursales de AXA Colpatria a nivel Nacional.” Consúltelas aquí https://www.axacolpatria.co/portal/Red/cid/23/Sucursales-Seguros-y-Capitalizacion-Colpatria\",\n    \"timestamp\": 1717774367429\n}"}],"_postman_id":"dbf90399-5782-4cb9-b749-26669eeda8de"},{"name":"sell  | AXA","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"d38fde22-2252-4774-869b-28a61e69b7af","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 91,\r\n    \"data\": {\r\n        \"amount\": {\r\n            \"amount\": 556400,\r\n            \"runt\": 2100,\r\n            \"prima\": 364700,\r\n            \"contributions\": 189600,\r\n            \"valueDiscountLaw\": 0,\r\n            \"valueDiscountTotal\": 0,\r\n            \"valuePayDiscount\": 556400,\r\n            \"amountAdministrative\": 566,\r\n            \"amountTotal\": 557400,\r\n            \"dateStart\": \"2024-06-04\",\r\n            \"dateEnd\": \"2025-06-03\",\r\n            \"discount\": 0\r\n        },\r\n        \"license\": \"EJV885\",\r\n        \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiMmE2MDhjY2YtZjdiOS00ZGM1LTg2OTQtYTAyY2E0ODNkOWE4IiwiaWRDb3JyZWxhY2lvbiI6MTcxNzUzNDY0MTc1MH0=\",\r\n        \"cifrateAmount\": {\r\n            \"hash\": \"eyJhbW91bnQiOjU1NzQwMH0=\",\r\n            \"hashEchoData\": \"ef3e40f13fa0430eb1dfa9a8e499e3a4ea81c42159b5ee3eccac88d8ef47198e32d28339fcf656704009a0b05802363b3016d921bcfd6aa8920558535aa75218\"\r\n        },\r\n        \"userDetail\": {\r\n            \"cellphone\": \"3200000000\",\r\n            \"email\": \"test@email.com\",\r\n            \"document\": \"860002964\",\r\n            \"docType\": \"NIT\"\r\n        }\r\n    },\r\n    \"amount\": 557400\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<p><code>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</code></p>\n<p>Example of a payment request for the AXA Colpatria product. The necessary information is provided, such as the productId (in this case, 91) and other relevant data, all attributes are mandatory.</p>\n<p><strong>Note:</strong><br />In order to sell this product, it is important to bear in mind that it is part of a special product. Therefore, before being able to use it, it is necessary to complete the entire product activation process. This can be achieved by using the following services: <code>/product/activation/....</code><br />It is important to remember that to perform a sale using this service, several crucial data points must be sent. Some of these data points are obtained from the <code>/products/query</code> service. The necessary data are as follows: <code>amount</code>, <code>cifrateAmount</code>, and <code>hashEchoData</code>.</p>\n<h3 id=\"payload-for-custom-sell\">Payload for Custom Sell</h3>\n<p>The following payload is required for performing a custom sell:</p>\n<ul>\n<li><p><code>productId</code>: (number, required) Identifies the product for which the sale is being made.</p>\n</li>\n<li><p><code>data</code>: (object, required) Contains specific sale data.</p>\n<ul>\n<li><p><code>terminal</code>:</p>\n<ul>\n<li><code>id</code>: A unique identifier for the merchant (POS) that is generating the SOAT sale transaction for the API client. If there is no merchant under the API client's network, the same merchant ID assigned by Refacil should be sent in the <code>id</code> field.</li>\n</ul>\n</li>\n<li><p><code>amount</code>: (object, required) Details about the sale amount.</p>\n<ul>\n<li><p><code>amount</code>: (number, required) Total amount of the sale.</p>\n</li>\n<li><p><code>runt</code>: (number) Value for RUNT.</p>\n</li>\n<li><p><code>prima</code>: (number) Prima value.</p>\n</li>\n<li><p><code>contributions</code>: (number) Contributions.</p>\n</li>\n<li><p><code>valueDiscountLaw</code>: (number) Value of law discount.</p>\n</li>\n<li><p><code>valueDiscountTotal</code>: (number) Total discount value.</p>\n</li>\n<li><p><code>valuePayDiscount</code>: (number) Amount to pay with discount.</p>\n</li>\n<li><p><code>amountAdministrative</code>: (number) Administrative amount.</p>\n</li>\n<li><p><code>amountTotal</code>: (number) Total amount.</p>\n</li>\n<li><p><code>dateStart</code>: (string) Start date.</p>\n</li>\n<li><p><code>dateEnd</code>: (string) End date.</p>\n</li>\n<li><p><code>discount</code>: (number) Discount.</p>\n</li>\n</ul>\n</li>\n<li><p><code>license</code>: (string) Vehicle license plate.</p>\n</li>\n<li><p><code>hashEchoData</code>: (string) Hash data.</p>\n</li>\n<li><p><code>cifrateAmount</code>: (object) Encrypted amount.</p>\n<ul>\n<li><p><code>hash</code>: (string) Hash.</p>\n</li>\n<li><p><code>hashEchoData</code>: (string) Hash data.</p>\n</li>\n</ul>\n</li>\n<li><p><code>userDetail</code>: (object, required) User details.</p>\n<ul>\n<li><p><code>cellphone</code>: (string, required) User's cellphone number.</p>\n</li>\n<li><p><code>email</code>: (string) User's email.</p>\n</li>\n<li><p><code>document</code>: (string, required) User's document number.</p>\n</li>\n<li><p><code>docType</code>: (string, required) Type of user's document.</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p><code>amount</code>: (number, required) Total amount of the sale.</p>\n</li>\n<li><p><code>moveTmpBalance</code>: (boolean) Indicates whether to move temporary balance.</p>\n</li>\n</ul>\n<p>After the sale has been successfully completed, the response will follow a structure similar to the following. In this response, important information is provided, such as the balance of the main wallet and the balance of the profit wallet. Additionally, within the 'billData' object, you will find the fundamental information necessary to generate the sales receipt that will be delivered to the end customer. It is important to note that this step is mandatory, as it is a direct requirement from AXA Colpatria.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"0cc34f58-c015-43c0-aa55-74c219161d2b","name":"200 OK","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 91,\r\n    \"data\": {\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"amount\": 908800,\r\n            \"runt\": 2100,\r\n            \"prima\": 595900,\r\n            \"contributions\": 309800,\r\n            \"valueDiscountLaw\": 0,\r\n            \"valueDiscountTotal\": 0,\r\n            \"valuePayDiscount\": 907800,\r\n            \"amountAdministrative\": 1000,\r\n            \"amountTotal\": 908800,\r\n            \"dateStart\": \"2024-05-28\",\r\n            \"dateEnd\": \"2025-05-27\",\r\n            \"discount\": 0\r\n        },\r\n        \"license\": \"TMY833\",\r\n        \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiZGExM2ZlZmYtOTQyMi00YzcwLTgzZjAtMjJjNmMzMTFiNDY2IiwiaWRDb3JyZWxhY2lvbiI6MTcxNjkxNTI3MjczNH0=\",\r\n        \"cifrateAmount\": {\r\n            \"hash\": \"eyJhbW91bnQiOjkwODgwMH0=\",\r\n            \"hashEchoData\": \"ec0068253f0777fc641022340ef6c5e38342b17a468035d3e8ad5ab3876296e1641fec8fc57b048c93efb3fc2dc5c121627f15250cd27a1a8803fac7d393aec9\"\r\n        },\r\n        \"userDetail\": {\r\n            \"cellphone\": \"3200000000\",\r\n            \"email\": \"test@email.com\",\r\n            \"document\": \"819000939\",\r\n            \"docType\": \"NIT\"\r\n        }\r\n    },\r\n    \"amount\": 908800\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:50:22 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"368"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"170-UezACg3snFUqXJiSedt+vumr4jA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1716915319608,\n        \"payload\": {\n            \"posBalance\": \"$8,407,900.16\",\n            \"tmpBalance\": \"$1,033,642.00\",\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"type\": \"heading\",\n                        \"label\": \"Recibo de venta SOAT\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": \"408416084\"\n                    },\n                    {\n                        \"label\": \"Red transacciones:\",\n                        \"value\": \"Super Pagos S.A.S\"\n                    },\n                    {\n                        \"label\": \"NIT:\",\n                        \"value\": \"900616155-2\"\n                    },\n                    {\n                        \"label\": \"Fecha y Hora:\",\n                        \"value\": \"2024-05-28 11:55\"\n                    },\n                    {\n                        \"label\": \"ID Punto de venta:\",\n                        \"value\": \"228757\"\n                    },\n                    {\n                        \"label\": \"Proveedor:\",\n                        \"value\": \"AXA COLPATRIA\"\n                    },\n                    {\n                        \"label\": \"NIT:\",\n                        \"value\": \"860002184-6\"\n                    },\n                    {\n                        \"type\": \"heading\",\n                        \"label\": \"Información de la póliza\"\n                    },\n                    {\n                        \"label\": \"Fecha expedición:\",\n                        \"value\": \"2024-05-28 11:55\"\n                    },\n                    {\n                        \"label\": \"Inicio vigencia:\",\n                        \"value\": \"2024-05-29 00:00\"\n                    },\n                    {\n                        \"label\": \"Fin Vigencia:\",\n                        \"value\": \"2025-05-28 23:59\"\n                    },\n                    {\n                        \"label\": \"No. póliza:\",\n                        \"value\": \"4601069500\"\n                    },\n                    {\n                        \"type\": \"money\",\n                        \"label\": \"RUNT:\",\n                        \"value\": \"2100\"\n                    },\n                    {\n                        \"type\": \"money\",\n                        \"label\": \"Prima SOAT:\",\n                        \"value\": \"595900\"\n                    },\n                    {\n                        \"type\": \"money\",\n                        \"label\": \"Contribuciones:\",\n                        \"value\": \"309800\"\n                    },\n                    {\n                        \"type\": \"money\",\n                        \"label\": \"Descuento de ley:\",\n                        \"value\": \"0\"\n                    },\n                    {\n                        \"type\": \"money\",\n                        \"label\": \"Pago total con descuento:\",\n                        \"value\": \"907800\"\n                    },\n                    {\n                        \"type\": \"heading\",\n                        \"label\": \"Información del tomador\"\n                    },\n                    {\n                        \"label\": \"Tomador:\",\n                        \"value\": \"INTERASEO S.A.S E.S.P\"\n                    },\n                    {\n                        \"label\": \"Tipo doc ID:\",\n                        \"value\": \"NIT 819000939\"\n                    },\n                    {\n                        \"label\": \"Mensaje:\",\n                        \"value\": \"Se solicita autorización al tomador para tratamiento de sus datos y se le informa que las políticas tratamiento de datos y la posibilidad de modificarlos o eliminarlos están en la página 222. axacolpatria.co\"\n                    },\n                    {\n                        \"type\": \"heading\",\n                        \"label\": \"Información del vehículo\"\n                    },\n                    {\n                        \"label\": \"Servicio:\",\n                        \"value\": \"Público\"\n                    },\n                    {\n                        \"label\": \"Cilindraje:\",\n                        \"value\": \"4570\"\n                    },\n                    {\n                        \"label\": \"Modelo:\",\n                        \"value\": \"2009\"\n                    },\n                    {\n                        \"label\": \"Placa:\",\n                        \"value\": \"TMY833\"\n                    },\n                    {\n                        \"label\": \"Marca:\",\n                        \"value\": \"CHEVROLET\"\n                    },\n                    {\n                        \"label\": \"Línea:\",\n                        \"value\": \"NPR\"\n                    },\n                    {\n                        \"label\": \"Pasajeros:\",\n                        \"value\": \"2\"\n                    },\n                    {\n                        \"label\": \"Capacidad:\",\n                        \"value\": \"4000\"\n                    },\n                    {\n                        \"label\": \"Clase:\",\n                        \"value\": \"CARGA O MIXTOS\"\n                    },\n                    {\n                        \"label\": \"No. Motor:\",\n                        \"value\": \"487950\"\n                    },\n                    {\n                        \"label\": \"No. Chasis:\",\n                        \"value\": \"9GDNPR7199B014109\"\n                    },\n                    {\n                        \"label\": \"No. VIN:\",\n                        \"value\": \"9GDNPR7199B014109\"\n                    },\n                    {\n                        \"label\": \"Mensaje 1:\",\n                        \"value\": \"Conserva tu recibo y descarga tu póliza en la pagina www.axacolpatria.co Las autoridades de control de transito deben verificar la tendencia del SOAT mediante una consulta en línea en tiempo real de la base del RUNT por medio de dispositivos móviles.\"\n                    },\n                    {\n                        \"label\": \"Mensaje 2:\",\n                        \"value\": \"Mayor información Comunícate en Bogotá al 601 4235757 y en el resto del país 01-8000-512620 o desde cualquier celular #247\"\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Administración\",\n                        \"value\": 1000,\n                        \"type\": \"money\"\n                    },\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 908800,\n                        \"type\": \"money\"\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"label\": \"Valor de descarga:\",\n                        \"value\": \"https://clientes.axacolpatria.co/descargar-soat\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": \"3200000000\",\n                    \"message\": \"¡Hola!, has comprado (SOAT AXA COLPATRIA) por valor de $908800, este es el código de la venta 408416084. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/228757/408416084\"\n                }\n            }\n        }\n    }\n}"},{"id":"ed8fa214-dab1-424e-a865-5b1908390412","name":"400 Bad Request | case 1","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 91,\r\n    \"data\": {\r\n        \"amount\": {\r\n            \"amount\": 908800,\r\n            \"runt\": 2100,\r\n            \"prima\": 595900,\r\n            \"contributions\": 309800,\r\n            \"valueDiscountLaw\": 0,\r\n            \"valueDiscountTotal\": 0,\r\n            \"valuePayDiscount\": 907800,\r\n            \"amountAdministrative\": 1000,\r\n            \"amountTotal\": 908800,\r\n            \"dateStart\": \"2024-05-28\",\r\n            \"dateEnd\": \"2025-05-27\",\r\n            \"discount\": 0\r\n        },\r\n        \"license\": \"TMY833\",\r\n        \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiZGExM2ZlZmYtOTQyMi00YzcwLTgzZjAtMjJjNmMzMTFiNDY2IiwiaWRDb3JyZWxhY2lvbiI6MTcxNjkxNTI3MjczNH0=\",\r\n        \"cifrateAmount\": {\r\n            \"hash\": \"eyJhbW91bnQiOjkwODgwMH0=\",\r\n            \"hashEchoData\": \"ec0068253f0777fc641022340ef6c5e38342b17a468035d3e8ad5ab3876296e1641fec8fc57b048c93efb3fc2dc5c121627f15250cd27a1a8803fac7d393aec9\"\r\n        },\r\n        \"userDetail\": {\r\n            \"cellphone\": \"3200000000\",\r\n            \"email\": \"test@email.com\",\r\n            \"document\": \"819000939\",\r\n            \"docType\": \"NIT\"\r\n        }\r\n    },\r\n    \"amount\": 908800\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:50:22 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"368"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"170-UezACg3snFUqXJiSedt+vumr4jA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"1. Se pueden realizar reintentos. 2. Si el error persiste se debe notificar a la mesa de ayuda de AXA y entregar XML o información con que están realizando la solicitud al servicio de AXA.\",\n    \"timestamp\": 1717012222068,\n    \"saleId\": 408416143,\n    \"result\": {\n        \"status\": \"error\",\n        \"data\": {},\n        \"message\": \"1. Se pueden realizar reintentos. 2. Si el error persiste se debe notificar a la mesa de ayuda de AXA y entregar XML o información con que están realizando la solicitud al servicio de AXA.\"\n    }\n}"},{"id":"45f0a85f-3ce2-4dc9-ae1e-4414cc9cc6e0","name":"400 Bad Request | case 2","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 91,\r\n    \"data\": {\r\n        \"amount\": {\r\n            \"amount\": 908800,\r\n            \"runt\": 2100,\r\n            \"prima\": 595900,\r\n            \"contributions\": 309800,\r\n            \"valueDiscountLaw\": 0,\r\n            \"valueDiscountTotal\": 0,\r\n            \"valuePayDiscount\": 907800,\r\n            \"amountAdministrative\": 1000,\r\n            \"amountTotal\": 908800,\r\n            \"dateStart\": \"2024-05-28\",\r\n            \"dateEnd\": \"2025-05-27\",\r\n            \"discount\": 0\r\n        },\r\n        \"license\": \"TMY833\",\r\n        \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiZGExM2ZlZmYtOTQyMi00YzcwLTgzZjAtMjJjNmMzMTFiNDY2IiwiaWRDb3JyZWxhY2lvbiI6MTcxNjkxNTI3MjczNH0=\",\r\n        \"cifrateAmount\": {\r\n            \"hash\": \"eyJhbW91bnQiOjkwODgwMH0=\",\r\n            \"hashEchoData\": \"ec0068253f0777fc641022340ef6c5e38342b17a468035d3e8ad5ab3876296e1641fec8fc57b048c93efb3fc2dc5c121627f15250cd27a1a8803fac7d393aec9\"\r\n        },\r\n        \"userDetail\": {\r\n            \"cellphone\": \"3200000000\",\r\n            \"email\": \"test@email.com\",\r\n            \"document\": \"819000939\",\r\n            \"docType\": \"NIT\"\r\n        }\r\n    },\r\n    \"amount\": 908800\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:50:22 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"368"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"170-UezACg3snFUqXJiSedt+vumr4jA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"1.Verificar la información. 2. Garantizar que tenga una cotización del mismo día vigente. 3. Reintentar'\",\n    \"timestamp\": 1717012222068,\n    \"saleId\": 408416143,\n    \"result\": {\n        \"status\": \"error\",\n        \"data\": {},\n        \"message\": \"1.Verificar la información. 2. Garantizar que tenga una cotización del mismo día vigente. 3. Reintentar'\"\n    }\n}"},{"id":"c47cc1a6-7edc-46d2-b054-20f3f72ad993","name":"400 Bad Request | case 3","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 91,\r\n    \"data\": {\r\n        \"amount\": {\r\n            \"amount\": 908800,\r\n            \"runt\": 2100,\r\n            \"prima\": 595900,\r\n            \"contributions\": 309800,\r\n            \"valueDiscountLaw\": 0,\r\n            \"valueDiscountTotal\": 0,\r\n            \"valuePayDiscount\": 907800,\r\n            \"amountAdministrative\": 1000,\r\n            \"amountTotal\": 908800,\r\n            \"dateStart\": \"2024-05-28\",\r\n            \"dateEnd\": \"2025-05-27\",\r\n            \"discount\": 0\r\n        },\r\n        \"license\": \"TMY833\",\r\n        \"hashEchoData\": \"eyJpZFRyYW5zYWNjaW9uIjoiZGExM2ZlZmYtOTQyMi00YzcwLTgzZjAtMjJjNmMzMTFiNDY2IiwiaWRDb3JyZWxhY2lvbiI6MTcxNjkxNTI3MjczNH0=\",\r\n        \"cifrateAmount\": {\r\n            \"hash\": \"eyJhbW91bnQiOjkwODgwMH0=\",\r\n            \"hashEchoData\": \"ec0068253f0777fc641022340ef6c5e38342b17a468035d3e8ad5ab3876296e1641fec8fc57b048c93efb3fc2dc5c121627f15250cd27a1a8803fac7d393aec9\"\r\n        },\r\n        \"userDetail\": {\r\n            \"cellphone\": \"3200000000\",\r\n            \"email\": \"test@email.com\",\r\n            \"document\": \"819000939\",\r\n            \"docType\": \"NIT\"\r\n        }\r\n    },\r\n    \"amount\": 908800\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:50:22 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"368"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"170-UezACg3snFUqXJiSedt+vumr4jA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"1. Se pueden realizar reintentos. 2. Si el error persiste se debe notificar a la mesa de ayuda de AXA y entregar XML o información con que están realizando la solicitud al servicio de AXA\",\n    \"timestamp\": 1717012222068,\n    \"saleId\": 408416143,\n    \"result\": {\n        \"status\": \"error\",\n        \"data\": {},\n        \"message\": \"1. Se pueden realizar reintentos. 2. Si el error persiste se debe notificar a la mesa de ayuda de AXA y entregar XML o información con que están realizando la solicitud al servicio de AXA\"\n    }\n}"}],"_postman_id":"d38fde22-2252-4774-869b-28a61e69b7af"}],"id":"7a191dba-0991-4d8f-b135-88306a4de2ef","description":"<p>Here you will find all the endpoints related to the sale of SOAT AXA COLPATRIA.</p>\n<p><strong>Note:</strong> This product includes an administrative cost for each sale made. For more information, please contact your commercial agent.</p>\n<p><strong>For AXA service testing:</strong> It is required to indicate in the documentation that a test environment must be requested from the commercial agent at least 15 days in advance.</p>\n<h2 id=\"timeout-configuration\">Timeout Configuration</h2>\n<p>The following timeout values are configured for AXA provider operations:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Operation</th>\n<th>Min (seconds)</th>\n<th>Max (seconds)</th>\n<th>Timeout (seconds)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>AXA</td>\n<td>0</td>\n<td>15</td>\n<td>50</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Important:</strong> These timeout values should be considered when implementing integrations with AXA COLPATRIA services to ensure proper error handling and user experience.</p>\n","_postman_id":"7a191dba-0991-4d8f-b135-88306a4de2ef"},{"name":"Previsora","item":[{"name":"query  | Quote","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"7642aa79-794e-4bc0-ae4d-a883260049b3","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"documentType\": 1,\r\n    \"document\": \"1032363500\",\r\n    \"queryType\": \"SOATFullData\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<p><code>Allows performing a custom query on the platform. Send the request body with the necessary parameters for the query in the format specified by the QueryBody object. The response will include the results of the query in case of success.</code></p>\n<p>The following is an example of a SOAT insurance request for a vehicle. The following required data must be provided: productId (in this case, 1014006), queryType (in this case SOATFullData), document number and vehicle registration number.</p>\n<p><strong>Note:</strong></p>\n<p>It is important to remember that in the response of this product, several of its data points are crucial as they must be sent in the service that performs the sale (/sells/sell). The necessary data are as follows: amount, vehDetail, and userDetail.</p>\n<h3 id=\"payload-for-custom-query\">Payload for Custom Query</h3>\n<p>The following payload is required for performing a custom query:</p>\n<ul>\n<li><p><code>productId</code>: (number, required) Identifies the product for which the query is being made.</p>\n</li>\n<li><p><code>documentType</code>: (number, required) Specifies the type of document. Allowed values:</p>\n<ul>\n<li><code>1</code>: CEDULA DE CIUDADANIA</li>\n<li><code>2</code>: CEDULA DE EXTRANJERIA</li>\n<li><code>3</code>: NIT</li>\n<li><code>4</code>: TARJETA DE IDENTIDAD</li>\n</ul>\n</li>\n<li><p><code>document</code>: (string, required) The document number for identification purposes.</p>\n<p>  Length validation rules based on <code>documentType</code>:</p>\n<ul>\n<li><p><strong>For <code>documentType = 1</code> (CEDULA DE CIUDADANIA)</strong>:</p>\n<ul>\n<li>Minimum length: 7 numeric characters</li>\n<li>Maximum length: 10 numeric characters</li>\n</ul>\n</li>\n<li><p><strong>For <code>documentType = 2</code> (CEDULA DE EXTRANJERIA)</strong>:</p>\n<ul>\n<li>Minimum length: 5 characters (alphanumeric allowed)</li>\n<li>Maximum length: 15 characters (alphanumeric allowed)</li>\n</ul>\n</li>\n<li><p><strong>For <code>documentType = 3</code> (NIT)</strong>:</p>\n<ul>\n<li>Minimum length: 6 numeric characters (includes verification digit – VD)</li>\n<li>Maximum length: 11 numeric characters (includes VD)</li>\n<li>Must be sent <strong>without hyphen (-)</strong> and must include the verification digit.</li>\n</ul>\n<p>  Additional rules based on length:</p>\n<ul>\n<li>If length is 11, must start with \"1\" → (new CC + VD)</li>\n<li>If length is 10, must start with \"8\" or \"9\" → (NIT + VD)</li>\n<li>If length is 9 or less, can start with any digit → (old CC + VD)</li>\n</ul>\n<p>  💡 <strong>VD (Verification Digit)</strong>: A verification digit is a number mathematically calculated by DIAN (Dirección de Impuestos y Aduanas Nacionales) to validate that the NIT was entered correctly. It is included as part of the document number.\n  </p>\n</li>\n<li><p><strong>For <code>documentType = 4</code> (TARJETA DE IDENTIDAD)</strong>:</p>\n<ul>\n<li>Minimum length: 10 numeric characters</li>\n<li>Maximum length: 11 numeric characters</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p><code>queryType</code>: (string, required) Specifies the type of query to be performed.</p>\n</li>\n<li><p><code>license</code>: (string, required) The license plate of the vehicle.</p>\n</li>\n</ul>\n<p><strong>Important:</strong> This request will be processed within a timeout of <strong>30,000 milliseconds (30 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"790d9791-ed55-4fb0-9406-a9fd875ac77c","name":"200 OK","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"documentType\": 1,\r\n    \"document\": \"1032363500\",\r\n    \"queryType\": \"SOATFullData\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:28:08 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1299"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"513-SMjBTK6JYQhvQxCIRhazJt3laDU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1716924224351,\n        \"payload\": {\n            \"license\": \"ABC123\",\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\n            \"amount\": {\n                \"TariffCode\": \"920\",\n                \"InsurancePremium\": 907900,\n                \"InsuranceTax\": 453950,\n                \"InsuranceFine\": 1700,\n                \"Total\": 1363550,\n                \"TotalWithDiscountAmount\": 1363550,\n                \"DiscountAmount\": 0,\n                \"ElectricDiscount\": 0,\n                \"PercentageElectricDiscount\": 0,\n                \"InsurancePremiumFormatted\": \"$907.900\",\n                \"InsuranceTaxFormatted\": \"$453.950\",\n                \"InsuranceFineFormatted\": \"$1.700\",\n                \"TotalFormatted\": \"$1.363.550\",\n                \"DiscountAmountFormatted\": \"$0\",\n                \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\n                \"createdAt\": \"2020-02-20T10:23:24.000Z\",\n                \"dateStart\": \"2020-02-20\",\n                \"dateEnd\": \"2021-02-19\",\n                \"amount\": 1413550,\n                \"amountDiscount\": 0,\n                \"amountOthers\": 50000,\n                \"amountTotal\": 1413550,\n                \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\n                \"runt\": 1700,\n                \"codeFasecolda\": 0,\n                \"typeCost\": 0,\n                \"Law2161Discount\": 0,\n                \"discount\": 0\n            },\n            \"vehDetail\": {\n                \"vehicleLineId\": 5560,\n                \"vehicleClassId\": 8,\n                \"vehicleClassMinistryId\": 28,\n                \"serviceTypeId\": 2,\n                \"vehicleBodyTypeId\": 8,\n                \"vehicleDescription\": \"NISSAN URVAN - 2012\",\n                \"vehDescription\": \"NISSAN URVAN - 2012\",\n                \"queryId\": \"\",\n                \"noSerie\": \"\",\n                \"noMotor\": \"Z0796987CM\",\n                \"noChasis\": \"JN1MG4E25Z0796987\",\n                \"cc\": 2953,\n                \"type\": \"CERRADA\",\n                \"gas\": \"\",\n                \"year\": 2012,\n                \"passengers\": 16,\n                \"brand\": \"NISSAN\",\n                \"brandId\": 64,\n                \"vin\": \"JN1MG4E25Z0796987\",\n                \"lineCode\": \"\",\n                \"service\": \"\",\n                \"zone\": \"\",\n                \"weight\": 0,\n                \"cityId\": 5266\n            },\n            \"userDetail\": {\n                \"name\": \"Nombre\",\n                \"lastName\": \"Apellido\",\n                \"docNumber\": \"1111111\",\n                \"cellphone\": \"3111111111111\",\n                \"email\": \"contacto@gmail.com\",\n                \"phone\": \"\",\n                \"docType\": 1,\n                \"address\": \"Calle 1 # 1 - 01\",\n                \"cityCode\": 76834,\n                \"stateCode\": 76,\n                \"addressType\": 1,\n                \"typePerson\": \"F\"\n            }\n        }\n    }\n}"},{"id":"b4fa94e9-b44c-48f0-833a-a901c8cbecda","name":"No se encontró datos","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"document\": \"1032363500\",\r\n    \"queryType\": \"SOATFullData\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"No se encontro ningun dato: \",\n    \"timestamp\": 1753988618773,\n    \"path\": \"/product/query\",\n    \"date\": 1753988618774\n}"},{"id":"d5315493-5ee0-40ad-a59e-695f8d67f326","name":"Placa no asociada","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"document\": \"1032363500\",\r\n    \"queryType\": \"SOATFullData\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"La placa no esta asociada a algun organismo de transito\",\n    \"timestamp\": 1753988618773,\n    \"path\": \"/product/query\",\n    \"date\": 1753988618774\n}"},{"id":"8740bf68-c308-434b-a64c-67e258b240aa","name":"Timeout","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"document\": \"1032363500\",\r\n    \"queryType\": \"SOATFullData\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"La solicitud ha tardado mas del tiempo estimado, por favor intente nuevamente. Disculpe las molestias, agradecemos su comprension (0)\",\n    \"timestamp\": 1753991481892,\n    \"path\": \"/product/query\",\n    \"date\": 1753991481893\n}"}],"_postman_id":"7642aa79-794e-4bc0-ae4d-a883260049b3"},{"name":"query  | Consult","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"8ad11feb-8053-4f8c-ae65-2ec2cfbee3e8","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"queryType\": \"SOATPolicy\",\r\n    \"license\": \"XAZ975\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<p><code>Returns the information of the last policy issued for the license plate. If the policy is queried on days after its issuance, the service will not return the requested information. It is important to clarify that this endpoint does not retrieve failed sales in the system.</code></p>\n<h3 id=\"payload-for-consult-query\">Payload for Consult Query</h3>\n<p>The following payload is required for performing a custom query:</p>\n<ul>\n<li><p><code>productId</code>: (number, required) Identifies the product for which the query is being made.</p>\n</li>\n<li><p><code>queryType</code>: (string, required) Specifies the type of query to be performed, in this case have to be `SOATPolicy`.</p>\n</li>\n<li><p><code>license</code>: (string, required) The license plate of the vehicle.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"9a1e40a5-c10b-4fa3-830f-d01152d9dc5a","name":"200 OK","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"queryType\": \"SOATPolicy\",\r\n    \"license\": \"ABC123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:28:08 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1299"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"513-SMjBTK6JYQhvQxCIRhazJt3laDU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1716924224351,\n        \"payload\": {\n            \"policyStatus\": true,\n            \"policy\": 3308005758686000,\n            \"city\": \"CALI\",\n            \"cityCode\": \"76001\",\n            \"runt\": \"2100\",\n            \"valPrima\": \"213300***\",\n            \"valTotal\": \"326300\",\n            \"DiscountAmount\": 0,\n            \"TotalWithDiscountAmount\": \"326300\",\n            \"pdf\": \"https://pre.seguros.transfiriendo.com:451/SoatNetPRE/Modules/Reports/PrinterInsurancePolicy.aspx?ReportName=PolicyVirtualPREVISORA&P1=4388E7176876B9B2CF56BFA2E028B10BCE8F74FF&P2=67410&P3=tucarpeta\"\n        }\n    }\n}"},{"id":"d4bb168c-9686-4d93-afe5-7216c57aa80b","name":"No emitida","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"queryType\": \"SOATPolicy\",\r\n    \"license\": \"ABC123\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1716924224351,\n        \"payload\": {\n            \"policyStatus\": false\n        }\n    }\n}"}],"_postman_id":"8ad11feb-8053-4f8c-ae65-2ec2cfbee3e8"},{"name":"sell | Previsora","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"1098489b-68a3-44b9-8632-c76531ff24ed","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"data\": {\r\n        \"license\": \"ABC123\",\r\n        \"productId\": 1014006,\r\n        \"cellphone\": \"3001234567\",\r\n        \"document\": \"1111111\",\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"TariffCode\": \"920\",\r\n            \"InsurancePremium\": 907900,\r\n            \"InsuranceTax\": 453950,\r\n            \"InsuranceFine\": 1700,\r\n            \"Total\": 1363550,\r\n            \"TotalWithDiscountAmount\": 1363550,\r\n            \"DiscountAmount\": 0,\r\n            \"ElectricDiscount\": 0,\r\n            \"PercentageElectricDiscount\": 0,\r\n            \"InsurancePremiumFormatted\": \"$907.900\",\r\n            \"InsuranceTaxFormatted\": \"$453.950\",\r\n            \"InsuranceFineFormatted\": \"$1.700\",\r\n            \"TotalFormatted\": \"$1.363.550\",\r\n            \"DiscountAmountFormatted\": \"$0\",\r\n            \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\r\n            \"createdAt\": \"2020-02-20T10:23:24.000Z\",\r\n            \"dateStart\": \"2020-02-20\",\r\n            \"dateEnd\": \"2021-02-19\",\r\n            \"amount\": 1413550,\r\n            \"amountDiscount\": 0,\r\n            \"amountOthers\": 50000,\r\n            \"amountTotal\": 1413550,\r\n            \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\r\n            \"runt\": 1700,\r\n            \"codeFasecolda\": 0,\r\n            \"typeCost\": 0,\r\n            \"Law2161Discount\": 0,\r\n            \"discount\": 0\r\n        },\r\n        \"vehDetail\": {\r\n            \"vehicleLineId\": 5560,\r\n            \"vehicleClassId\": 8,\r\n            \"vehicleClassMinistryId\": 28,\r\n            \"serviceTypeId\": 2,\r\n            \"vehicleBodyTypeId\": 8,\r\n            \"vehicleDescription\": \"NISSAN URVAN - 2012\",\r\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\r\n            \"queryId\": \"\",\r\n            \"noSerie\": \"\",\r\n            \"noMotor\": \"Z0796987CM\",\r\n            \"noChasis\": \"JN1MG4E25Z0796987\",\r\n            \"cc\": 2953,\r\n            \"type\": \"CERRADA\",\r\n            \"gas\": \"\",\r\n            \"year\": 2012,\r\n            \"passengers\": 16,\r\n            \"brand\": \"NISSAN\",\r\n            \"brandId\": 64,\r\n            \"vin\": \"JN1MG4E25Z0796987\",\r\n            \"lineCode\": \"\",\r\n            \"service\": \"\",\r\n            \"zone\": \"\",\r\n            \"weight\": 0,\r\n            \"cityId\": 5266\r\n        },\r\n        \"userDetail\": {\r\n            \"name\": \"Nombre\",\r\n            \"lastName\": \"Apellido\",\r\n            \"docNumber\": \"1111111\",\r\n            \"cellphone\": \"3001234567\",\r\n            \"email\": \"contacto@gmail.com\",\r\n            \"phone\": \"\",\r\n            \"docType\": 1,\r\n            \"address\": \"Calle 1 # 1 - 01\",\r\n            \"cityCode\": 76834,\r\n            \"stateCode\": 76,\r\n            \"addressType\": 1,\r\n            \"typePerson\": \"F\",\r\n            \"gender\": \"M\",\r\n            \"RegimenTypeId\": \"2\",\r\n            \"RutId\": 5\r\n        }\r\n    },\r\n    \"amount\": 1413550\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<p><code>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</code></p>\n<p><strong>Product restrictions</strong></p>\n<ul>\n<li><p>Allows selling SOAT in the name of a person who is not the owner of the vehicle.</p>\n</li>\n<li><p>SOAT can be sold for a PRIVATE CAR.</p>\n</li>\n<li><p>SOAT can be sold for a PRIVATE MOTORCYCLE.</p>\n</li>\n<li><p>SOAT can be sold for a PUBLIC SERVICE VEHICLE.</p>\n</li>\n<li><p>SOAT cannot be sold to vehicles with 0 KM.</p>\n</li>\n<li><p>Sales hours are from 12:30 AM to 11:30 PM.</p>\n</li>\n<li><p>SOAT can be sold up to 30 days before its expiration.</p>\n</li>\n<li><p>The definition of the Administrative Cost and Commission for the sale of SOAT can be validated with your Refacil Commercial Advisor.</p>\n</li>\n<li><p>The insurance companies are directly responsible for sending the issued SOAT via email. The API provides a URL from the provider for downloading the SOAT.</p>\n</li>\n</ul>\n<p>Example of a payment request for the Previsora product. The necessary information is provided, such as the productId (in this case, 1014006) and other relevant data, all attributes are mandatory.</p>\n<p><strong>Note:</strong></p>\n<p>It is important to remember that to perform a sale using this service, several crucial data points must be sent. Some of these data points are obtained from the <code>/products/query</code> Quote Service. The necessary data are as follows: <code>amount</code>, <code>vehDetail</code>, and <code>userDetail</code>.</p>\n<p>Some data obtained from the /products/query service may be null; however, this data is mandatory for the sale process and must be filled in.</p>\n<p>In addition to the <code>userDetail</code> object, three additional attributes must be sent: <code>gender</code>, <code>RegimenTypeId</code>, and <code>RutId</code>.</p>\n<p>The possible values for each of the aforementioned attributes are as follows:</p>\n<ul>\n<li><p><code>gender</code>:</p>\n<ul>\n<li><p>M = Male</p>\n</li>\n<li><p>F = Female</p>\n</li>\n</ul>\n</li>\n<li><p><code>RegimenTypeId</code>:</p>\n<ul>\n<li><p>1 = Responsible for IVA</p>\n</li>\n<li><p>2 = Not responsible for IVA</p>\n</li>\n</ul>\n</li>\n<li><p><code>RutId</code>:</p>\n<ul>\n<li><p>1 = Large taxpayer</p>\n</li>\n<li><p>2 = Self-withholding agent</p>\n</li>\n<li><p>3 = IVA withholding agent</p>\n</li>\n<li><p>4 = Simple taxation regime</p>\n</li>\n<li><p>5 = Not applicable</p>\n</li>\n<li><p>6 = Large taxpayer-Self-withholding agent-IVA withholding agent</p>\n</li>\n<li><p>7 = Self-withholding agent-IVA withholding agent</p>\n</li>\n<li><p>8 = Large taxpayer-IVA withholding agent</p>\n</li>\n</ul>\n</li>\n<li><p><code>cityCode</code>: DANE code</p>\n</li>\n<li><p><code>stateCode</code>: This field is populated based on the <strong>state</strong> sheet <a href=\"https://refacil01-my.sharepoint.com/:f:/g/personal/w_sarmiento_refacil_com/EnvRlRK92WlHuuBfU6Zyom0BvCFmPG_OzhU-te-6ZQ0jMw\">here.</a></p>\n</li>\n<li><p>To check the values for the other parameters, please refer <a href=\"https://refacil01-my.sharepoint.com/:f:/g/personal/w_sarmiento_refacil_com/EnvRlRK92WlHuuBfU6Zyom0BvCFmPG_OzhU-te-6ZQ0jMw\">here.</a></p>\n</li>\n</ul>\n<h2 id=\"field-validations\">Field Validations</h2>\n<h3 id=\"name-and-last-name-format-requirements\"><strong>Name and Last Name Format Requirements</strong></h3>\n<p>The validation rules for the <code>name</code> and <code>lastName</code> fields in the <code>userDetail</code> object depend on the person type:</p>\n<p><strong>For Natural Persons (Personas Naturales):</strong></p>\n<ul>\n<li><p>Must contain only letters (uppercase and lowercase)</p>\n</li>\n<li><p>Allows letters with accents: <code>á, é, í, ó, ú, Á, É, Í, Ó, Ú</code></p>\n</li>\n<li><p>Allows Spanish special characters: <code>ñ, Ñ, ü, Ü</code></p>\n</li>\n<li><p>Allows spaces between words (for compound names)</p>\n</li>\n<li><p>Minimum length of 3 characters</p>\n</li>\n<li><p>Does not allow numbers</p>\n</li>\n<li><p>Does not allow special characters such as <code>@</code>, <code>#</code></p>\n</li>\n</ul>\n<p><strong>For Legal Entities (Personas Jurídicas):</strong></p>\n<ul>\n<li><p>Allows alphanumeric characters (letters and numbers)</p>\n</li>\n<li><p>Allows letters with accents: <code>á, é, í, ó, ú, Á, É, Í, Ó, Ú</code></p>\n</li>\n<li><p>Allows Spanish special characters: <code>ñ, Ñ, ü, Ü</code></p>\n</li>\n<li><p>Allows spaces between words</p>\n</li>\n<li><p>Minimum length of 3 characters</p>\n</li>\n<li><p>Does not allow special characters such as <code>@</code>, <code>#</code></p>\n</li>\n</ul>\n<h3 id=\"email-format-requirements\">Email Format Requirements</h3>\n<p>The <code>email</code> field must comply with strict validation rules to prevent errors during the issuance process:</p>\n<ul>\n<li><p>Must contain only letters and numbers (no accents or special characters like Ã¡, Ã©, etc.)</p>\n</li>\n<li><p>Allows only single separators: <code>.</code> (period), <code>_</code> (underscore), <code>-</code> (hyphen)</p>\n</li>\n<li><p>Cannot have consecutive separators (e.g., <code>..</code> or <code>--</code>)</p>\n</li>\n<li><p>Cannot start or end with separators</p>\n</li>\n<li><p>Domain must have at least 2 characters in the top-level domain (TLD)</p>\n</li>\n<li><p>Must not contain spaces or the <code>@</code> symbol except as the domain separator</p>\n</li>\n</ul>\n<p><strong>Valid examples:</strong></p>\n<ul>\n<li><p><code>usuario@gmail.com</code></p>\n</li>\n<li><p><code>nombre.apellido@empresa.co</code></p>\n</li>\n<li><p><code>user_name@dominio.com</code></p>\n</li>\n<li><p><code>user-123@test.com.co</code></p>\n</li>\n</ul>\n<p><strong>Invalid examples:</strong></p>\n<ul>\n<li><p><code>usuario.@gmail.com</code> (separator at the end before @)</p>\n</li>\n<li><p><code>user..name@domain.com</code> (consecutive separators)</p>\n</li>\n<li><p><code>@domain.com</code> (missing local part)</p>\n</li>\n<li><p><code>usuarioá@gmail.com</code> (contains accented characters)</p>\n</li>\n<li><p><code>campohernández@gmail.com</code> (contains special characters with encoding issues)</p>\n</li>\n<li><p><code>johndoe@---gmail.com</code> (multiple consecutive hyphens)</p>\n</li>\n</ul>\n<h3 id=\"address-format-requirements\">Address Format Requirements</h3>\n<p>The <code>address</code> field must comply with the following validation rules:</p>\n<h3 id=\"validation-rules\">Validation Rules</h3>\n<ol>\n<li><strong>Cannot start with numeric characters</strong> - The first character after trimming cannot be a digit (0-9)</li>\n<li><strong>First character must be</strong>:<ul>\n<li>A letter (uppercase or lowercase): <code>A-Z</code>, <code>a-z</code></li>\n<li>A vowel with Spanish acute accent: <code>á</code>, <code>é</code>, <code>í</code>, <code>ó</code>, <code>ú</code>, <code>Á</code>, <code>É</code>, <code>Í</code>, <code>Ó</code>, <code>Ú</code></li>\n<li>The letter ñ/Ñ</li>\n<li>The letter ü/Ü (with diaeresis)</li>\n<li>A whitespace character (space, tab, etc.) — though after <code>trim()</code>, this is effectively not possible at the start</li>\n</ul>\n</li>\n<li><strong>Subsequent characters (position 2 onwards) can be</strong>:<ul>\n<li>All characters allowed for the first position, plus:</li>\n<li>Digits: <code>0-9</code></li>\n<li>Special address characters: <code>#</code>, <code>-</code>, <code>.</code>, <code>,</code></li>\n</ul>\n</li>\n</ol>\n<h3 id=\"allowed-characters-summary\">Allowed Characters Summary</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Category</th>\n<th>Characters</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Letters (no accent)</td>\n<td><code>A-Z</code>, <code>a-z</code></td>\n</tr>\n<tr>\n<td>Accented vowels</td>\n<td><code>á</code>, <code>é</code>, <code>í</code>, <code>ó</code>, <code>ú</code>, <code>Á</code>, <code>É</code>, <code>Í</code>, <code>Ó</code>, <code>Ú</code></td>\n</tr>\n<tr>\n<td>Special Spanish letters</td>\n<td><code>ñ</code>, <code>Ñ</code>, <code>ü</code>, <code>Ü</code></td>\n</tr>\n<tr>\n<td>Digits (not at start)</td>\n<td><code>0-9</code></td>\n</tr>\n<tr>\n<td>Whitespace</td>\n<td>Space, tab, etc.</td>\n</tr>\n<tr>\n<td>Address symbols</td>\n<td><code>#</code>, <code>-</code>, <code>.</code>, <code>,</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"not-allowed-characters\">NOT Allowed Characters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Category</th>\n<th>Examples</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Other punctuation</td>\n<td><code>; : ! ? ¡ ¿ \" ' ( ) [ ] { }</code></td>\n</tr>\n<tr>\n<td>Mathematical/monetary</td>\n<td><code>+ * / % = &lt; &gt; ^ ~ € $ @ &amp;</code></td>\n</tr>\n<tr>\n<td>Underscore and separators</td>\n<td>`_</td>\n</tr>\n<tr>\n<td>Other accented letters</td>\n<td><code>ç</code>, <code>ã</code>, <code>õ</code>, <code>ô</code>, <code>ä</code>, <code>ö</code>, <code>ê</code>, <code>â</code>, <code>î</code>, <code>û</code></td>\n</tr>\n<tr>\n<td>Non-Latin alphabets</td>\n<td>Cyrillic, Greek, Arabic, Chinese, etc.</td>\n</tr>\n<tr>\n<td>Emojis</td>\n<td>🙂 😁 🏠</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"valid-examples\">Valid Examples</h3>\n<ul>\n<li><code>Calle 123 #45-67</code></li>\n<li><code>Carrera 7 Bis #8-24</code></li>\n<li><code>Avenida Principal, Casa 5</code></li>\n<li><code>Avenida Pérez Galdós</code></li>\n<li><code>Av. Simón Bolívar 123</code></li>\n<li><code>Cl 10 Sur #45-20</code></li>\n<li><code>Urbanización La Ñora, Bloque 3</code></li>\n</ul>\n<h3 id=\"invalid-examples\">Invalid Examples</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Address</th>\n<th>Reason</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>123 Calle Principal</code></td>\n<td>Starts with a number</td>\n</tr>\n<tr>\n<td><code>Calle @Principal</code></td>\n<td>Contains <code>@</code> (not allowed)</td>\n</tr>\n<tr>\n<td><code>Dirección &lt;&gt;</code></td>\n<td>Contains angle brackets</td>\n</tr>\n<tr>\n<td><code>Calle_45 #12-34</code></td>\n<td>Contains underscore <code>_</code></td>\n</tr>\n<tr>\n<td><code>Calle 5 #12-34!</code></td>\n<td>Contains exclamation mark <code>!</code></td>\n</tr>\n<tr>\n<td><code>Rua São Paulo 10</code></td>\n<td>Contains <code>ã</code> (not in allowed accents)</td>\n</tr>\n<tr>\n<td><code>Avenida (Frente al parque)</code></td>\n<td>Contains parentheses <code>()</code></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"payload-for-custom-sell\">Payload for Custom Sell</h3>\n<p>The following payload is required for performing a custom sell:</p>\n<blockquote>\n<p><strong>Note:</strong> According to the provider's official documentation, the <code>name</code> and <code>lastName</code> fields are mandatory. </p>\n</blockquote>\n<ul>\n<li><p><code>productId</code>: (number, required) Identifies the product for which the sale is being made.</p>\n</li>\n<li><p><code>data</code>: (object, required) Contains specific sale data.</p>\n<ul>\n<li><p><code>license</code>: (string, required) License plate of the vehicle.</p>\n</li>\n<li><p><code>productId</code>: (string, required) Product identification (empty in this example).</p>\n</li>\n<li><p><code>cellphone</code>: (string, required) User's cellphone number.</p>\n</li>\n<li><p><code>document</code>: (string, required) User's document number. For NIT, this field must include the verification digit and must be sent <strong>without hyphen (-)</strong>.</p>\n</li>\n<li><p><code>terminal</code>:</p>\n<ul>\n<li><code>id</code>: A unique identifier for the merchant (POS) that is generating the SOAT sale transaction for the API client. If there is no merchant under the API client's network, the same merchant ID assigned by Refacil should be sent in the <code>id</code> field.</li>\n</ul>\n</li>\n<li><p><code>amount</code>: (object, required) Details about the sale amount.</p>\n<ul>\n<li><p><code>TariffCode</code>: (string, required) Tariff code.</p>\n</li>\n<li><p><code>InsurancePremium</code>: (number, required) Insurance premium.</p>\n</li>\n<li><p><code>InsuranceTax</code>: (number, required) Insurance tax.</p>\n</li>\n<li><p><code>InsuranceFine</code>: (number, required) Insurance fine.</p>\n</li>\n<li><p><code>Total</code>: (number, required) Total.</p>\n</li>\n<li><p><code>TotalWithDiscountAmount</code>: (number, required) Total with discount amount.</p>\n</li>\n<li><p><code>DiscountAmount</code>: (number, required) Discount amount.</p>\n</li>\n<li><p><code>ElectricDiscount</code>: (numbe, requiredr) Electric discount.</p>\n</li>\n<li><p><code>PercentageElectricDiscount</code>: (number, required) Percentage electric discount.</p>\n</li>\n<li><p><code>InsurancePremiumFormatted</code>: (string, required) Formatted insurance premium.</p>\n</li>\n<li><p><code>InsuranceTaxFormatted</code>: (string, required) Formatted insurance tax.</p>\n</li>\n<li><p><code>InsuranceFineFormatted</code>: (string, required) Formatted insurance fine.</p>\n</li>\n<li><p><code>TotalFormatted</code>: (string, required) Formatted total.</p>\n</li>\n<li><p><code>DiscountAmountFormatted</code>: (string, required) Formatted discount amount.</p>\n</li>\n<li><p><code>TotalWithDiscountAmountFormatted</code>: (string, required) Formatted total with discount amount.</p>\n</li>\n<li><p><code>createdAt</code>: (string, required) Creation date.</p>\n</li>\n<li><p><code>dateStart</code>: (string, required) Start date.</p>\n</li>\n<li><p><code>dateEnd</code>: (string, required) End date.</p>\n</li>\n<li><p><code>amount</code>: (number, required) Amount.</p>\n</li>\n<li><p><code>amountDiscount</code>: (number, required) Discount amount.</p>\n</li>\n<li><p><code>amountOthers</code>: (number, required) Other amounts.</p>\n</li>\n<li><p><code>amountTotal</code>: (number, required) Total amount.</p>\n</li>\n<li><p><code>hash</code>: (string, required) Hash.</p>\n</li>\n<li><p><code>runt</code>: (number, required) Value for RUNT.</p>\n</li>\n<li><p><code>codeFasecolda</code>: (number, required) Fasecolda code.</p>\n</li>\n<li><p><code>typeCost</code>: (number, required) Cost type.</p>\n</li>\n<li><p><code>Law2161Discount</code>: (number, required) Law 2161 discount.</p>\n</li>\n<li><p><code>discount</code>: (number, required) Discount.</p>\n</li>\n</ul>\n</li>\n<li><p><code>vehDetail</code>: (object) Vehicle details.</p>\n<ul>\n<li><p><code>vehicleLineId</code>: (number, required) Vehicle line ID.</p>\n</li>\n<li><p><code>vehicleClassId</code>: (number, required) Vehicle class ID. Defined by the SAME provider (SOAT – RUNT classification). Valid values:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>1</td>\n<td>MOTOS</td>\n</tr>\n<tr>\n<td>2</td>\n<td>CAMPEROS O CAMIONETAS</td>\n</tr>\n<tr>\n<td>3</td>\n<td>CARGA O MIXTO</td>\n</tr>\n<tr>\n<td>4</td>\n<td>OFICIALES, ESPECIALES, BOMBEROS, DIPLOMÁTICOS</td>\n</tr>\n<tr>\n<td>5</td>\n<td>AUTOMÓVILES FAMILIARES</td>\n</tr>\n<tr>\n<td>6</td>\n<td>VEHÍCULO PARA 6 O MÁS PASAJEROS</td>\n</tr>\n<tr>\n<td>7</td>\n<td>AUTOS DE NEGOCIOS, TAXIS, ALQUILER, ENSEÑANZA</td>\n</tr>\n<tr>\n<td>8</td>\n<td>BUSES O BUSETAS</td>\n</tr>\n<tr>\n<td>9</td>\n<td>INTERMUNICIPAL</td>\n</tr>\n<tr>\n<td>12</td>\n<td>MOTOCARRO</td>\n</tr>\n<tr>\n<td>13</td>\n<td>CICLOMOTOR</td>\n</tr>\n</tbody>\n</table>\n</div></li>\n<li><p><code>vehicleClassMinistryId</code>: (number, required) Vehicle class ID (Ministry).</p>\n</li>\n<li><p><code>serviceTypeId</code>: (number, required) Service type ID.</p>\n</li>\n<li><p><code>vehicleBodyTypeId</code>: (number, required) Vehicle body type ID.</p>\n</li>\n<li><p><code>vehicleDescription</code>: (string, required) Vehicle description.</p>\n</li>\n<li><p><code>vehDescription</code>: (string, required) Vehicle description.</p>\n</li>\n<li><p><code>queryId</code>: (string, required) Query ID.</p>\n</li>\n<li><p><code>noSerie</code>: (string, required) Serial number.</p>\n</li>\n<li><p><code>noMotor</code>: (string, required) Motor number. If this field is empty, it must be filled with the value from the VIN field.</p>\n</li>\n<li><p><code>noChasis</code>: (string, required) Chassis number.</p>\n</li>\n<li><p><code>cc</code>: (number, required) Cubic centimeters.</p>\n</li>\n<li><p><code>type</code>: (string, required) Type.</p>\n</li>\n<li><p><code>gas</code>: (string, required) Gas.</p>\n</li>\n<li><p><code>year</code>: (number, required) Year.</p>\n</li>\n<li><p><code>passengers</code>: (number, required) Passengers.</p>\n</li>\n<li><p><code>brand</code>: (string, required) Brand.</p>\n</li>\n<li><p><code>brandId</code>: (number, required) Brand ID.</p>\n</li>\n<li><p><code>vin</code>: (string, required) Vehicle identification number (VIN).</p>\n</li>\n<li><p><code>lineCode</code>: (string, required) Line code.</p>\n</li>\n<li><p><code>service</code>: (string, required) Service.</p>\n</li>\n<li><p><code>zone</code>: (string, required) Zone.</p>\n</li>\n<li><p><code>weight</code>: (number, required) Weight.</p>\n</li>\n<li><p><code>cityId</code>: (number, required) City ID.</p>\n</li>\n</ul>\n</li>\n<li><p><code>userDetail</code>: (object, required) User details.</p>\n<ul>\n<li><p><code>name</code>: (string) User's name.</p>\n<ul>\n<li><p>Must have at least <strong>3 characters</strong> and cannot contain special characters.</p>\n</li>\n<li><p>No maximum length is configured.</p>\n</li>\n</ul>\n</li>\n<li><p><code>lastName</code>: (string, required) User's last name.</p>\n<ul>\n<li><p>Must have at least <strong>3 characters</strong> and cannot contain special characters.</p>\n</li>\n<li><p>No maximum length is configured.</p>\n</li>\n</ul>\n</li>\n<li><p><code>docNumber</code>: (string, required) User's document number.</p>\n</li>\n<li><p><code>cellphone</code>: (string) User's cellphone number. Must be a valid Colombian cellphone number starting with \"3\" followed by exactly 9 digits (e.g., \"3001234567\").</p>\n</li>\n<li><p><code>email</code>: (string, required) User's email. Must be a valid email address format (e.g., \"<a href=\"https://mailto:user@domain.com\">user@domain.com</a>\").</p>\n</li>\n<li><p><code>phone</code>: (string) User's phone.</p>\n</li>\n<li><p><code>docType</code>: (number, required) User's document type.</p>\n</li>\n<li><p><code>address</code>: (string, required) User's address.</p>\n</li>\n<li><p><code>cityCode</code>: (integer, required) User's city code.</p>\n</li>\n<li><p><code>stateCode</code>: (integer, required) User's state code.</p>\n</li>\n<li><p><code>addressType</code>: (number, required) User's address type.</p>\n</li>\n<li><p><code>typePerson</code>: (string) Type of person (e.g., 'F' for natural person, 'J' for legal person).</p>\n</li>\n<li><p><code>gender</code>: (string) User's gender.</p>\n</li>\n<li><p><code>RegimenTypeId</code>: (string, required) User's regime type ID.</p>\n</li>\n<li><p><code>RutId</code>: (number, required) User's RUT ID.</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n<li><p><code>amount</code>: (number, required) Total amount of the sale.</p>\n</li>\n<li><p><code>moveTmpBalance</code>: (boolean) Indicates whether to move temporary balance.</p>\n</li>\n</ul>\n<p><code>Note</code>: If the VIN data is not available, the API will use the chassis number as a replacement.</p>\n<p>After the sale has been successfully completed, the response will follow a structure similar to the following. <strong>This response will be returned within a timeout of 120,000 milliseconds (2 minutes).</strong> In this response, important information is provided, such as the balance of the main wallet and the balance of the profit wallet. Additionally, within the 'billData' object, you will find the fundamental information necessary to generate the sales receipt that will be delivered to the end customer.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"d2f0baa5-b58f-4420-873b-aebbf88a4b4f","name":"200 OK","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"data\": {\r\n        \"license\": \"ABC123\",\r\n        \"productId\": 1014006,\r\n        \"cellphone\": \"3001234567\",\r\n        \"document\": \"1111111\",\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"TariffCode\": \"920\",\r\n            \"InsurancePremium\": 907900,\r\n            \"InsuranceTax\": 453950,\r\n            \"InsuranceFine\": 1700,\r\n            \"Total\": 1363550,\r\n            \"TotalWithDiscountAmount\": 1363550,\r\n            \"DiscountAmount\": 0,\r\n            \"ElectricDiscount\": 0,\r\n            \"PercentageElectricDiscount\": 0,\r\n            \"InsurancePremiumFormatted\": \"$907.900\",\r\n            \"InsuranceTaxFormatted\": \"$453.950\",\r\n            \"InsuranceFineFormatted\": \"$1.700\",\r\n            \"TotalFormatted\": \"$1.363.550\",\r\n            \"DiscountAmountFormatted\": \"$0\",\r\n            \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\r\n            \"createdAt\": \"2020-02-20T10:23:24.000Z\",\r\n            \"dateStart\": \"2020-02-20\",\r\n            \"dateEnd\": \"2021-02-19\",\r\n            \"amount\": 1413550,\r\n            \"amountDiscount\": 0,\r\n            \"amountOthers\": 50000,\r\n            \"amountTotal\": 1413550,\r\n            \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\r\n            \"runt\": 1700,\r\n            \"codeFasecolda\": 0,\r\n            \"typeCost\": 0,\r\n            \"Law2161Discount\": 0,\r\n            \"discount\": 0\r\n        },\r\n        \"vehDetail\": {\r\n            \"vehicleLineId\": 5560,\r\n            \"vehicleClassId\": 8,\r\n            \"vehicleClassMinistryId\": 28,\r\n            \"serviceTypeId\": 2,\r\n            \"vehicleBodyTypeId\": 8,\r\n            \"vehicleDescription\": \"NISSAN URVAN - 2012\",\r\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\r\n            \"queryId\": \"\",\r\n            \"noSerie\": \"\",\r\n            \"noMotor\": \"Z0796987CM\",\r\n            \"noChasis\": \"JN1MG4E25Z0796987\",\r\n            \"cc\": 2953,\r\n            \"type\": \"CERRADA\",\r\n            \"gas\": \"\",\r\n            \"year\": 2012,\r\n            \"passengers\": 16,\r\n            \"brand\": \"NISSAN\",\r\n            \"brandId\": 64,\r\n            \"vin\": \"JN1MG4E25Z0796987\",\r\n            \"lineCode\": \"\",\r\n            \"service\": \"\",\r\n            \"zone\": \"\",\r\n            \"weight\": 0,\r\n            \"cityId\": 5266\r\n        },\r\n        \"userDetail\": {\r\n            \"name\": \"Nombre\",\r\n            \"lastName\": \"Apellido\",\r\n            \"docNumber\": \"1111111\",\r\n            \"cellphone\": \"3001234567\",\r\n            \"email\": \"contacto@gmail.com\",\r\n            \"phone\": \"\",\r\n            \"docType\": 1,\r\n            \"address\": \"Calle 1 # 1 - 01\",\r\n            \"cityCode\": 76834,\r\n            \"stateCode\": 76,\r\n            \"addressType\": 1,\r\n            \"typePerson\": \"F\",\r\n            \"gender\": \"M\",\r\n            \"RegimenTypeId\": \"2\",\r\n            \"RutId\": 5\r\n        }\r\n    },\r\n    \"amount\": 1413550\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Wed, 29 May 2024 19:50:22 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"368"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"170-UezACg3snFUqXJiSedt+vumr4jA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1725038661212,\n        \"payload\": {\n            \"posBalance\": \"$3,646,464.00\",\n            \"tmpBalance\": \"$6,500.00\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"SOAT Previsora\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-08-30\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"12:24:20\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187226\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"3163\"\n                    },\n                    {\n                        \"label\": \"Placa\",\n                        \"value\": \"ABC123\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Documento\",\n                        \"value\": \"1111111\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Descarga tu SOAT\",\n                        \"value\": \"https://pre.transfiriendo.com:448/SOATNETSEAPI/modules/reports/temp/PolizaSoat14694400000300-1.pdf\",\n                        \"type\": \"link\",\n                        \"labelLink\": \"Descargar\"\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor prima\",\n                        \"value\": 907900,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor RUNT\",\n                        \"value\": 1700,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Contribuciones\",\n                        \"value\": 453950,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor descuento ley\",\n                        \"value\": 0,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor descuento vehículo eléctrico\",\n                        \"value\": 0,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor total con descuento\",\n                        \"value\": 1363550,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Administración\",\n                        \"value\": 50000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Total\",\n                        \"value\": 1413550,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"value\": \"¡Hola!, has comprado (SOAT Previsora)\"\n                    }\n                ],\n                \"links\": [\n                    {\n                        \"label\": \"Descarga Póliza\",\n                        \"value\": \"https://pre.seguros.transfiriendo.com:451/SoatNetPRE/Modules/Reports/PrinterInsurancePolicy.aspx?ReportName=PolicyVirtualPREVISORA&P1=4388E7176876B9B2CF56BFA2E028B10BCE8F74FF&P2=67410&P3=tucarpeta\",\n                        \"type\": \"link\",\n                        \"labelLink\": \"Descargar\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": \"3001234567\",\n                    \"message\": \"¡Hola!, has comprado (SOAT Previsora) por valor de $1413550, este es el código de la venta 441187226. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348024/441187226\"\n                }\n            },\n            \"sale\": {\n                \"id\": 441187226,\n                \"userId\": 348024,\n                \"amount\": 1413550,\n                \"serviceNumber\": \"ABC123\",\n                \"status\": 1,\n                \"productId\": 1014006,\n                \"createdAt\": \"2024-08-30T17:24:20.000Z\",\n                \"transactionId\": \"3163\",\n                \"extra\": \"https://pre.transfiriendo.com:448/SOATNETSEAPI/modules/reports/temp/PolizaSoat14694400000300-1.pdf\"\n            }\n        }\n    }\n}"},{"id":"386e7466-7f80-4a7b-903b-c14e69c90dca","name":"Timeout","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"data\": {\r\n        \"license\": \"ABC123\",\r\n        \"productId\": 1014006,\r\n        \"cellphone\": \"3001234567\",\r\n        \"document\": \"1111111\",\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"TariffCode\": \"920\",\r\n            \"InsurancePremium\": 907900,\r\n            \"InsuranceTax\": 453950,\r\n            \"InsuranceFine\": 1700,\r\n            \"Total\": 1363550,\r\n            \"TotalWithDiscountAmount\": 1363550,\r\n            \"DiscountAmount\": 0,\r\n            \"ElectricDiscount\": 0,\r\n            \"PercentageElectricDiscount\": 0,\r\n            \"InsurancePremiumFormatted\": \"$907.900\",\r\n            \"InsuranceTaxFormatted\": \"$453.950\",\r\n            \"InsuranceFineFormatted\": \"$1.700\",\r\n            \"TotalFormatted\": \"$1.363.550\",\r\n            \"DiscountAmountFormatted\": \"$0\",\r\n            \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\r\n            \"createdAt\": \"2020-02-20T10:23:24.000Z\",\r\n            \"dateStart\": \"2020-02-20\",\r\n            \"dateEnd\": \"2021-02-19\",\r\n            \"amount\": 1413550,\r\n            \"amountDiscount\": 0,\r\n            \"amountOthers\": 50000,\r\n            \"amountTotal\": 1413550,\r\n            \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\r\n            \"runt\": 1700,\r\n            \"codeFasecolda\": 0,\r\n            \"typeCost\": 0,\r\n            \"Law2161Discount\": 0,\r\n            \"discount\": 0\r\n        },\r\n        \"vehDetail\": {\r\n            \"vehicleLineId\": 5560,\r\n            \"vehicleClassId\": 8,\r\n            \"vehicleClassMinistryId\": 28,\r\n            \"serviceTypeId\": 2,\r\n            \"vehicleBodyTypeId\": 8,\r\n            \"vehicleDescription\": \"NISSAN URVAN - 2012\",\r\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\r\n            \"queryId\": \"\",\r\n            \"noSerie\": \"\",\r\n            \"noMotor\": \"Z0796987CM\",\r\n            \"noChasis\": \"JN1MG4E25Z0796987\",\r\n            \"cc\": 2953,\r\n            \"type\": \"CERRADA\",\r\n            \"gas\": \"\",\r\n            \"year\": 2012,\r\n            \"passengers\": 16,\r\n            \"brand\": \"NISSAN\",\r\n            \"brandId\": 64,\r\n            \"vin\": \"JN1MG4E25Z0796987\",\r\n            \"lineCode\": \"\",\r\n            \"service\": \"\",\r\n            \"zone\": \"\",\r\n            \"weight\": 0,\r\n            \"cityId\": 5266\r\n        },\r\n        \"userDetail\": {\r\n            \"name\": \"Nombre\",\r\n            \"lastName\": \"Apellido\",\r\n            \"docNumber\": \"1111111\",\r\n            \"cellphone\": \"3001234567\",\r\n            \"email\": \"contacto@gmail.com\",\r\n            \"phone\": \"\",\r\n            \"docType\": 1,\r\n            \"address\": \"Calle 1 # 1 - 01\",\r\n            \"cityCode\": 76834,\r\n            \"stateCode\": 76,\r\n            \"addressType\": 1,\r\n            \"typePerson\": \"F\",\r\n            \"gender\": \"M\",\r\n            \"RegimenTypeId\": \"2\",\r\n            \"RutId\": 5\r\n        }\r\n    },\r\n    \"amount\": 1413550\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 500,\n    \"errorCode\": \"\",\n    \"message\": \"Tiempo máximo excedido, por favor intente de nuevo.\",\n    \"timestamp\": 1751043506902,\n    \"path\": \"/sells/sell\",\n    \"date\": 1751043506903\n}"},{"id":"2a300b71-6a6e-4b2b-a4b3-b7c4ead04a0c","name":"Dirección inválida","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"data\": {\r\n        \"license\": \"ABC123\",\r\n        \"productId\": 1014006,\r\n        \"cellphone\": \"3001234567\",\r\n        \"document\": \"1111111\",\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"TariffCode\": \"920\",\r\n            \"InsurancePremium\": 907900,\r\n            \"InsuranceTax\": 453950,\r\n            \"InsuranceFine\": 1700,\r\n            \"Total\": 1363550,\r\n            \"TotalWithDiscountAmount\": 1363550,\r\n            \"DiscountAmount\": 0,\r\n            \"ElectricDiscount\": 0,\r\n            \"PercentageElectricDiscount\": 0,\r\n            \"InsurancePremiumFormatted\": \"$907.900\",\r\n            \"InsuranceTaxFormatted\": \"$453.950\",\r\n            \"InsuranceFineFormatted\": \"$1.700\",\r\n            \"TotalFormatted\": \"$1.363.550\",\r\n            \"DiscountAmountFormatted\": \"$0\",\r\n            \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\r\n            \"createdAt\": \"2020-02-20T10:23:24.000Z\",\r\n            \"dateStart\": \"2020-02-20\",\r\n            \"dateEnd\": \"2021-02-19\",\r\n            \"amount\": 1413550,\r\n            \"amountDiscount\": 0,\r\n            \"amountOthers\": 50000,\r\n            \"amountTotal\": 1413550,\r\n            \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\r\n            \"runt\": 1700,\r\n            \"codeFasecolda\": 0,\r\n            \"typeCost\": 0,\r\n            \"Law2161Discount\": 0,\r\n            \"discount\": 0\r\n        },\r\n        \"vehDetail\": {\r\n            \"vehicleLineId\": 5560,\r\n            \"vehicleClassId\": 8,\r\n            \"vehicleClassMinistryId\": 28,\r\n            \"serviceTypeId\": 2,\r\n            \"vehicleBodyTypeId\": 8,\r\n            \"vehicleDescription\": \"NISSAN URVAN - 2012\",\r\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\r\n            \"queryId\": \"\",\r\n            \"noSerie\": \"\",\r\n            \"noMotor\": \"Z0796987CM\",\r\n            \"noChasis\": \"JN1MG4E25Z0796987\",\r\n            \"cc\": 2953,\r\n            \"type\": \"CERRADA\",\r\n            \"gas\": \"\",\r\n            \"year\": 2012,\r\n            \"passengers\": 16,\r\n            \"brand\": \"NISSAN\",\r\n            \"brandId\": 64,\r\n            \"vin\": \"JN1MG4E25Z0796987\",\r\n            \"lineCode\": \"\",\r\n            \"service\": \"\",\r\n            \"zone\": \"\",\r\n            \"weight\": 0,\r\n            \"cityId\": 5266\r\n        },\r\n        \"userDetail\": {\r\n            \"name\": \"Nombre\",\r\n            \"lastName\": \"Apellido\",\r\n            \"docNumber\": \"1111111\",\r\n            \"cellphone\": \"3001234567\",\r\n            \"email\": \"contacto@gmail.com\",\r\n            \"phone\": \"\",\r\n            \"docType\": 1,\r\n            \"address\": \"Calle 1 # 1 - 01\",\r\n            \"cityCode\": 76834,\r\n            \"stateCode\": 76,\r\n            \"addressType\": 1,\r\n            \"typePerson\": \"F\",\r\n            \"gender\": \"M\",\r\n            \"RegimenTypeId\": \"2\",\r\n            \"RutId\": 5\r\n        }\r\n    },\r\n    \"amount\": 1413550\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 500,\n    \"errorCode\": \"\",\n    \"message\": \"La Dirección del Tomador es inválida.\",\n    \"timestamp\": 1753991476046,\n    \"path\": \"/sells/sell\",\n    \"date\": 1753991476047\n}"},{"id":"f163615a-21ef-4d6c-a45f-a006479cfcdb","name":"No es posible emitir","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1014006,\r\n    \"data\": {\r\n        \"license\": \"ABC123\",\r\n        \"productId\": 1014006,\r\n        \"cellphone\": \"3001234567\",\r\n        \"document\": \"1111111\",\r\n        \"terminal\": {\"id\": \"123456\"},\r\n        \"amount\": {\r\n            \"TariffCode\": \"920\",\r\n            \"InsurancePremium\": 907900,\r\n            \"InsuranceTax\": 453950,\r\n            \"InsuranceFine\": 1700,\r\n            \"Total\": 1363550,\r\n            \"TotalWithDiscountAmount\": 1363550,\r\n            \"DiscountAmount\": 0,\r\n            \"ElectricDiscount\": 0,\r\n            \"PercentageElectricDiscount\": 0,\r\n            \"InsurancePremiumFormatted\": \"$907.900\",\r\n            \"InsuranceTaxFormatted\": \"$453.950\",\r\n            \"InsuranceFineFormatted\": \"$1.700\",\r\n            \"TotalFormatted\": \"$1.363.550\",\r\n            \"DiscountAmountFormatted\": \"$0\",\r\n            \"TotalWithDiscountAmountFormatted\": \"$1.363.550\",\r\n            \"createdAt\": \"2020-02-20T10:23:24.000Z\",\r\n            \"dateStart\": \"2020-02-20\",\r\n            \"dateEnd\": \"2021-02-19\",\r\n            \"amount\": 1413550,\r\n            \"amountDiscount\": 0,\r\n            \"amountOthers\": 50000,\r\n            \"amountTotal\": 1413550,\r\n            \"hash\": \"ba931ea8d2b57c9248ec4285c45efdddfdfff4d8\",\r\n            \"runt\": 1700,\r\n            \"codeFasecolda\": 0,\r\n            \"typeCost\": 0,\r\n            \"Law2161Discount\": 0,\r\n            \"discount\": 0\r\n        },\r\n        \"vehDetail\": {\r\n            \"vehicleLineId\": 5560,\r\n            \"vehicleClassId\": 8,\r\n            \"vehicleClassMinistryId\": 28,\r\n            \"serviceTypeId\": 2,\r\n            \"vehicleBodyTypeId\": 8,\r\n            \"vehicleDescription\": \"NISSAN URVAN - 2012\",\r\n            \"vehDescription\": \"NISSAN URVAN - 2012\",\r\n            \"queryId\": \"\",\r\n            \"noSerie\": \"\",\r\n            \"noMotor\": \"Z0796987CM\",\r\n            \"noChasis\": \"JN1MG4E25Z0796987\",\r\n            \"cc\": 2953,\r\n            \"type\": \"CERRADA\",\r\n            \"gas\": \"\",\r\n            \"year\": 2012,\r\n            \"passengers\": 16,\r\n            \"brand\": \"NISSAN\",\r\n            \"brandId\": 64,\r\n            \"vin\": \"JN1MG4E25Z0796987\",\r\n            \"lineCode\": \"\",\r\n            \"service\": \"\",\r\n            \"zone\": \"\",\r\n            \"weight\": 0,\r\n            \"cityId\": 5266\r\n        },\r\n        \"userDetail\": {\r\n            \"name\": \"Nombre\",\r\n            \"lastName\": \"Apellido\",\r\n            \"docNumber\": \"1111111\",\r\n            \"cellphone\": \"3001234567\",\r\n            \"email\": \"contacto@gmail.com\",\r\n            \"phone\": \"\",\r\n            \"docType\": 1,\r\n            \"address\": \"Calle 1 # 1 - 01\",\r\n            \"cityCode\": 76834,\r\n            \"stateCode\": 76,\r\n            \"addressType\": 1,\r\n            \"typePerson\": \"F\",\r\n            \"gender\": \"M\",\r\n            \"RegimenTypeId\": \"2\",\r\n            \"RutId\": 5\r\n        }\r\n    },\r\n    \"amount\": 1413550\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 500,\n    \"errorCode\": \"\",\n    \"message\": \"No es posible emitir la Póliza entre las fechas [20/03/2026 12:00:00 a. m. - 19/03/2027 11:59:00 p. m.]. Esto puede ser debido a que el rango de fechas es inválido o se está intentando emitir una nueva póliza con inicio posterior a los 30 días a partir de la fecha de hoy o usted posee una póliza vigente y el sistema no esta permitiendo la operación para el rango indicado.\",\n    \"timestamp\": 1753924274128,\n    \"path\": \"/sells/sell\",\n    \"date\": 1753924274129\n}"}],"_postman_id":"1098489b-68a3-44b9-8632-c76531ff24ed"}],"id":"834ed1af-8ae7-4157-a8c9-c9f1162faf10","description":"<p>Here you will find all the endpoints related to the sale of SOAT PREVISORA.</p>\n<h2 id=\"timeout-configuration\">Timeout Configuration</h2>\n<p>The following timeout values are configured for PREVISORA provider operations:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Provider</th>\n<th>Min (seconds)</th>\n<th>Max (seconds)</th>\n<th>Timeout (seconds)</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>PREVISORA</td>\n<td>0</td>\n<td>300</td>\n<td>300</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Important:</strong></p>\n<p>Based on the current operation of the insurance company <strong>PREVISORA</strong>, the waiting time (timeout) for sales processing has been adjusted to <strong>5 minutes (300 seconds)</strong>. This change addresses the need to ensure that all transactions are processed correctly, even in scenarios where delays may occur.</p>\n<p>In addition, the API guarantees up to <strong>2 automatic retries</strong> in case a timeout occurs during processing. Although this behavior is not common in the API solution, it has been implemented to ensure the continuity and success of sales operations.</p>\n<p>It is recommended to take this configuration into account when implementing integrations with PREVISORA services, in order to ensure proper error handling and an optimal user experience.</p>\n<h2 id=\"test-environment\">Test Environment</h2>\n<h3 id=\"available-test-scenarios\">Available Test Scenarios</h3>\n<p>To test error scenarios and different response types, the following vehicle license plates are available:</p>\n<h4 id=\"error-handling\">Error Handling</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Method</th>\n<th>Plate</th>\n<th>Scenario</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>All</td>\n<td>TIM001</td>\n<td>Timeout</td>\n<td>Simulates timeout scenario</td>\n</tr>\n<tr>\n<td>All</td>\n<td>ERR400</td>\n<td>System Error</td>\n<td>Ocurrió un error inesperado. Consulte con el Administrador del sistema</td>\n</tr>\n<tr>\n<td>All</td>\n<td>ERR401</td>\n<td>Authentication Error</td>\n<td>No ha sido posible autenticarse, el token es incorrecto o el usuario no se encuentra activo</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"quote-operations\">Quote Operations</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Method</th>\n<th>Plate</th>\n<th>Scenario</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Quote</td>\n<td>ABC123</td>\n<td>Success Standard</td>\n<td>Success: Vehículo, camioneta, bus</td>\n</tr>\n<tr>\n<td>Quote</td>\n<td>ABC124</td>\n<td>Success with Discount</td>\n<td>Standard vehicle with discount applied</td>\n</tr>\n<tr>\n<td>Quote</td>\n<td>ABC125</td>\n<td>Electric Vehicle</td>\n<td>Electric car pricing</td>\n</tr>\n<tr>\n<td>Quote</td>\n<td>ABC126</td>\n<td>Law Discount</td>\n<td>Legal discount application</td>\n</tr>\n<tr>\n<td>Quote</td>\n<td>ABC127</td>\n<td>Transit Authority Error</td>\n<td>La placa no está asociada a algún organismo de tránsito</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"issue-operations\">Issue Operations</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Method</th>\n<th>Plate</th>\n<th>Scenario</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Issue</td>\n<td>ABC123</td>\n<td>Success Standard</td>\n<td>Success: Vehículo, camioneta, bus</td>\n</tr>\n<tr>\n<td>Issue</td>\n<td>ABC124</td>\n<td>Success with Discount</td>\n<td>Successfully issued with discount</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"consult-operations\">Consult Operations</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Method</th>\n<th>Plate</th>\n<th>Scenario</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Consult</td>\n<td>ABC123</td>\n<td>Issued</td>\n<td>Policy has been issued</td>\n</tr>\n<tr>\n<td>Consult</td>\n<td>ABC124</td>\n<td>Not Issued</td>\n<td>Policy has not been issued</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"usage-notes\">Usage Notes</h3>\n<ul>\n<li><p><strong>Test Plates</strong>: Use the provided test plates to simulate different scenarios during development and testing</p>\n</li>\n<li><p><strong>Error Simulation</strong>: TIM001 and ERR-prefixed plates are specifically designed to test error handling</p>\n</li>\n<li><p><strong>Success Flows</strong>: ABC123 generally represents successful operations across different methods</p>\n</li>\n<li><p><strong>Edge Cases</strong>: ABC124-ABC127 cover various business scenarios including discounts and restrictions</p>\n</li>\n<li><p>There is a complementary file containing additional test scenarios not listed in this documentation. You can access it here: ⁠<a href=\"https://refacil01-my.sharepoint.com/:f:/g/personal/w_sarmiento_refacil_com/EnvRlRK92WlHuuBfU6Zyom0BvCFmPG_OzhU-te-6ZQ0jMw\">Additional Test Scenarios Folder</a></p>\n</li>\n</ul>\n","_postman_id":"834ed1af-8ae7-4157-a8c9-c9f1162faf10"}],"id":"f2b41c42-93d6-4162-9fbd-b124a21c344e","_postman_id":"f2b41c42-93d6-4162-9fbd-b124a21c344e","description":""},{"name":"Luck and Chance","item":[{"name":"RushBet","item":[{"name":"sell | Luck and Chance RushBet","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"658cd0d1-09fc-4d8c-8a0c-7990ebed9c45","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"productId\": 603,\r\n  \"amount\": 100,\r\n  \"data\": {\r\n    \"cellphone\": \"3200000000\",\r\n    \"document\": \"1023900000\"\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<p><strong>Important:</strong> This response will be returned within a timeout of <strong>60,000 milliseconds (60 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"eb09eebd-9d64-420f-a850-176a824fa5ab","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"productId\": 603,\r\n  \"amount\": 100,\r\n  \"data\": {\r\n    \"cellphone\": \"3200000000\",\r\n    \"document\": \"1023900000\"\r\n  }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 12 Sep 2024 13:14:32 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1155"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"483-TwfFNOgycNScFNppUUx02YOKAJU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1726146872944,\n        \"payload\": {\n            \"posBalance\": \"$100.00\",\n            \"tmpBalance\": \"$0.00\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"RushBet\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-09-12\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"08:14:32\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187621\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"165768903944695\"\n                    },\n                    {\n                        \"label\": \"Número\",\n                        \"value\": \"3200000000\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Transacción\",\n                        \"value\": \"165768903944695\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor base\",\n                        \"value\": 16807,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor iva\",\n                        \"value\": 3193,\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 20000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"value\": \"data.share.message\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": null,\n                    \"message\": \"¡Hola!, has comprado (RushBet) por valor de $100, este es el código de la venta 441187621. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348212/441187621\"\n                }\n            },\n            \"sale\": {\n                \"id\": 441187621,\n                \"userId\": 348212,\n                \"amount\": 100,\n                \"serviceNumber\": \"1023900000\",\n                \"status\": 1,\n                \"productId\": 603,\n                \"createdAt\": \"2024-09-12T13:14:32.000Z\",\n                \"transactionId\": \"165768903944695\",\n                \"extra\": 31070\n            }\n        }\n    }\n}"},{"id":"b600db86-e3fd-4b99-8d04-d104532dd6ad","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"1b0bb4e3-2131-487a-a81a-ec2b82db6d13","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"9dec4c58-0080-4eab-a628-8d9ff84eb4d7","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"fa99fd86-8053-4b2b-ac6a-1b2fb29d0df5","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"91157c9a-016d-4ecb-b909-cab2c8387ca3","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"e5d052ef-2461-40a3-baa3-fd1f9053ec79","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"658cd0d1-09fc-4d8c-8a0c-7990ebed9c45"}],"id":"0ff9df81-0376-4e98-b054-960de470ca3d","_postman_id":"0ff9df81-0376-4e98-b054-960de470ca3d","description":""}],"id":"d54a48ae-54b8-4825-83cc-2c2a33788db4","description":"<p>In accordance with Decree 0175 of February 14, 2025, issued by the Colombian Government, the collection of IVA tax is mandatory for sales in the Luck and Chance category.</p>\n","_postman_id":"d54a48ae-54b8-4825-83cc-2c2a33788db4"},{"name":"Packages","item":[{"name":"Packages Claro","item":[{"name":"sell | Packages Claro","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"bc5eb0f0-b3ef-40fc-a5f9-d7f134dc4b66","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 200048,\r\n    \"data\": {\r\n        \"cellphone\": \"3215302000\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<p><strong>Important:</strong> This response will be returned within a timeout of <strong>60,000 milliseconds (60 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"8dee5020-dc4d-4265-878c-9b01c4ede88c","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 200034,\r\n    \"data\": {\r\n        \"cellphone\": \"3215302000\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 12 Sep 2024 13:46:28 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1262"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"4ee-jAFUfKLQzM1rNybMkUBOF63mHlQ\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1726148788835,\n        \"payload\": {\n            \"posBalance\": \"$9,996,000.00\",\n            \"tmpBalance\": \"$2.50\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"TODO INCLUIDO 400MB /MIN ILIM Y SMS A TODO OPERADOR NACIONAL + \\\"Chat de WhatsApp\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-09-12\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"08:46:28\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187622\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"0.a9hdjev94s\"\n                    },\n                    {\n                        \"label\": \"Número\",\n                        \"value\": \"3215302000\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 4000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"value\": \"Recarga valida por el operador\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": \"3222901435\",\n                    \"message\": \"¡Hola!, has comprado (TODO INCLUIDO 400MB /MIN ILIM Y SMS A TODO OPERADOR NACIONAL + \\\"Chat de WhatsApp) por valor de $4000, este es el código de la venta 441187622. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348212/441187622\"\n                }\n            },\n            \"sale\": {\n                \"id\": 441187622,\n                \"userId\": 348212,\n                \"amount\": 4000,\n                \"serviceNumber\": \"3215302000\",\n                \"status\": 1,\n                \"productId\": 52,\n                \"createdAt\": \"2024-09-12T13:46:28.000Z\",\n                \"transactionId\": \"0.a9hdjev94s\",\n                \"extra\": \"QUJERS1FRkhJLTEyMzQ1\"\n            }\n        }\n    }\n}"},{"id":"49cdd628-420d-44d5-8761-54b3f4f810a0","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"daa932f7-3f72-4342-bbe7-d4d1e8bb9dbc","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"5a2f41a8-aa55-4008-bf83-dccead89de1d","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"374bb7e1-5123-4161-b5db-aeee69d3ace1","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"dc5195af-c6c3-4867-9868-967031174794","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"5f48927a-2ce5-4005-8e39-ae0b0efb922f","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"bc5eb0f0-b3ef-40fc-a5f9-d7f134dc4b66"}],"id":"94edec1a-0135-4f3a-a99e-fab70add0b75","_postman_id":"94edec1a-0135-4f3a-a99e-fab70add0b75","description":""}],"id":"ff3c6474-ca42-44b4-8d44-b6d36991270a","_postman_id":"ff3c6474-ca42-44b4-8d44-b6d36991270a","description":""},{"name":"Recharges","item":[{"name":"DirectTV","item":[{"name":"Product | DirectTV Prepago","id":"f720737c-0682-4616-bd6c-2475f49634d4","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a bill payment operation on the platform. Send the request body with the necessary parameters for the payment in the format specified by the PaymentBody object. The response will include the results of the operation in case of success.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>amount</code>: Number representing the amount of the payment (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><code>cellphone</code>: String containing the cellphone number (required)</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<p><strong>Important:</strong> This response will be returned within a timeout of <strong>60,000 milliseconds (60 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"b8b2ef75-c314-4d0d-aa02-f08793b9cac7","name":"success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"date\": 0,\r\n    \"sellId\": 0,\r\n    \"payload\": {\r\n      \"preBalance\": 0,\r\n      \"posBalance\": 0,\r\n      \"tmpBalance\": 0,\r\n      \"debt\": 0,\r\n      \"billData\": {\r\n        \"fields\": [\r\n          {\r\n            \"name\": \"string\",\r\n            \"type\": \"string\",\r\n            \"options\": [\r\n              {\r\n                \"label\": \"string\",\r\n                \"value\": \"string\"\r\n              }\r\n            ],\r\n            \"label\": \"string\",\r\n            \"placeholder\": \"string\",\r\n            \"required\": true\r\n          }\r\n        ],\r\n        \"costs\": [\r\n          {\r\n            \"label\": \"string\",\r\n            \"value\": 0\r\n          }\r\n        ],\r\n        \"messages\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"stringInformation\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"footerInformation\": [\r\n          {}\r\n        ],\r\n        \"share\": {\r\n          \"cellphone\": \"string\",\r\n          \"message\": \"string\"\r\n        }\r\n      }\r\n    }\r\n  }\r\n}"},{"id":"2b5a0cdf-886c-475d-9e9f-9697ff4ef0b8","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"f3b69144-bd2c-48c2-8faf-d89487b03d31","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"},{"id":"94e98c63-d3a8-49a5-9830-b2bbb256309e","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"8d3f0ff8-cd09-4536-8ee4-badc5f24b0d5","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"8b9fc47a-5fdf-4167-9cfe-a678113e3a21","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"40e64196-1933-4cb3-98dc-6fe7bb56634d","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3015874044\"\r\n    },\r\n    \"productId\": 50,\r\n    \"amount\": 1000\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"f720737c-0682-4616-bd6c-2475f49634d4"}],"id":"69a38d73-4cc3-4ebb-a10e-4a7e396cb9b0","_postman_id":"69a38d73-4cc3-4ebb-a10e-4a7e396cb9b0","description":""}],"id":"98ed5f78-4f43-41b9-8ecf-d951b6503664","_postman_id":"98ed5f78-4f43-41b9-8ecf-d951b6503664","description":""},{"name":"Sale Pines","item":[{"name":"Pines","item":[{"name":"Netflix","item":[{"name":"sell | Netflix","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"eb4f1975-d190-4f0c-9924-12661db351ad","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 202,\r\n    \"amount\": 50,\r\n    \"data\": {\r\n        \"cellphone\": \"3015874029\",\r\n        \"email\": \"correo@refacil.com\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>amount</code>: Number representing the amount for the transaction (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String containing the cellphone number (required)</p>\n</li>\n<li><p><code>email</code>: String containing the email address (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<p><strong>Important:</strong> This response will be returned within a timeout of <strong>60,000 milliseconds (60 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"e3c09a94-1290-4963-af2a-662f50fce904","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 202,\r\n    \"amount\": 50,\r\n    \"data\": {\r\n        \"cellphone\": \"3015874029\",\r\n        \"email\": \"correo@refacil.com\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"date\": 0,\r\n    \"sellId\": 0,\r\n    \"payload\": {\r\n      \"preBalance\": 0,\r\n      \"posBalance\": 0,\r\n      \"tmpBalance\": 0,\r\n      \"debt\": 0,\r\n      \"billData\": {\r\n        \"fields\": [\r\n          {\r\n            \"name\": \"string\",\r\n            \"type\": \"string\",\r\n            \"options\": [\r\n              {\r\n                \"label\": \"string\",\r\n                \"value\": \"string\"\r\n              }\r\n            ],\r\n            \"label\": \"string\",\r\n            \"placeholder\": \"string\",\r\n            \"required\": true\r\n          }\r\n        ],\r\n        \"costs\": [\r\n          {\r\n            \"label\": \"string\",\r\n            \"value\": 0\r\n          }\r\n        ],\r\n        \"messages\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"stringInformation\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"footerInformation\": [\r\n          {}\r\n        ],\r\n        \"share\": {\r\n          \"cellphone\": \"string\",\r\n          \"message\": \"string\"\r\n        }\r\n      }\r\n    }\r\n  }\r\n}"}],"_postman_id":"eb4f1975-d190-4f0c-9924-12661db351ad"}],"id":"62cc475a-e56d-4fc9-b55f-29df1c3c4f67","_postman_id":"62cc475a-e56d-4fc9-b55f-29df1c3c4f67","description":""},{"name":"DirectTV","item":[{"name":"Product | DirectTV GO (1014005)","id":"6766fccb-385e-4c45-b3bf-6e8d0a5567f2","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a bill payment operation on the platform. Send the request body with the necessary parameters for the payment in the format specified by the PaymentBody object. The response will include the results of the operation in case of success.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String containing the cellphone number (required)</p>\n</li>\n<li><p><code>email</code>: String containing the email address (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"b0d5495c-0f25-4479-96e8-c9e06c743088","name":"success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"date\": 0,\r\n    \"sellId\": 0,\r\n    \"payload\": {\r\n      \"preBalance\": 0,\r\n      \"posBalance\": 0,\r\n      \"tmpBalance\": 0,\r\n      \"debt\": 0,\r\n      \"billData\": {\r\n        \"fields\": [\r\n          {\r\n            \"name\": \"string\",\r\n            \"type\": \"string\",\r\n            \"options\": [\r\n              {\r\n                \"label\": \"string\",\r\n                \"value\": \"string\"\r\n              }\r\n            ],\r\n            \"label\": \"string\",\r\n            \"placeholder\": \"string\",\r\n            \"required\": true\r\n          }\r\n        ],\r\n        \"costs\": [\r\n          {\r\n            \"label\": \"string\",\r\n            \"value\": 0\r\n          }\r\n        ],\r\n        \"messages\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"stringInformation\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"footerInformation\": [\r\n          {}\r\n        ],\r\n        \"share\": {\r\n          \"cellphone\": \"string\",\r\n          \"message\": \"string\"\r\n        }\r\n      }\r\n    }\r\n  }\r\n}"},{"id":"291fec96-c325-4129-bae0-9ad333b777b6","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"5080f2a7-980b-4251-9b4a-0f056a80011d","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"},{"id":"b8f09e5c-ddd2-4a0e-9eee-82dc9c2cf842","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"d2b26f3a-1f49-498f-a165-fbb9109446fe","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"8d7f0a9d-2e42-4758-a872-38eeeaedaa3b","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"f9b88177-1f1d-47ab-a619-4ffa580513f6","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014005\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"6766fccb-385e-4c45-b3bf-6e8d0a5567f2"},{"name":"Product | DirectTV GO (100777)","id":"84a7301e-0eab-4390-97bc-435c15750322","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a bill payment operation on the platform. Send the request body with the necessary parameters for the payment in the format specified by the PaymentBody object. The response will include the results of the operation in case of success.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String containing the cellphone number (required)</p>\n</li>\n<li><p><code>email</code>: String containing the email address (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"21c74e15-2549-46ea-a98d-1e396068d749","name":"success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"date\": 0,\r\n    \"sellId\": 0,\r\n    \"payload\": {\r\n      \"preBalance\": 0,\r\n      \"posBalance\": 0,\r\n      \"tmpBalance\": 0,\r\n      \"debt\": 0,\r\n      \"billData\": {\r\n        \"fields\": [\r\n          {\r\n            \"name\": \"string\",\r\n            \"type\": \"string\",\r\n            \"options\": [\r\n              {\r\n                \"label\": \"string\",\r\n                \"value\": \"string\"\r\n              }\r\n            ],\r\n            \"label\": \"string\",\r\n            \"placeholder\": \"string\",\r\n            \"required\": true\r\n          }\r\n        ],\r\n        \"costs\": [\r\n          {\r\n            \"label\": \"string\",\r\n            \"value\": 0\r\n          }\r\n        ],\r\n        \"messages\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"stringInformation\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"footerInformation\": [\r\n          {}\r\n        ],\r\n        \"share\": {\r\n          \"cellphone\": \"string\",\r\n          \"message\": \"string\"\r\n        }\r\n      }\r\n    }\r\n  }\r\n}"},{"id":"2a6e20b3-87a1-4450-802c-60df451ebd26","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"28d7e243-cb01-4ac6-9508-a0600a1b318f","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"5649fca2-33bc-4e50-a791-2bbd68ea8830","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"},{"id":"75a777bc-00fb-4989-a480-b6595b59df34","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"9f3bc2cf-ff6e-4650-8df5-72148166c84e","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"fd9d1d42-3e78-4a51-aa7c-9454bc42460d","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 100777\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"}],"_postman_id":"84a7301e-0eab-4390-97bc-435c15750322"},{"name":"Product | DirectTV GO (1014004)","id":"a14a1ba4-b9f5-460e-b079-a42e72b83fa3","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a bill payment operation on the platform. Send the request body with the necessary parameters for the payment in the format specified by the PaymentBody object. The response will include the results of the operation in case of success.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><p><code>productId</code>: Number representing the product identifier (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional data (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String containing the cellphone number (required)</p>\n</li>\n<li><p><code>email</code>: String containing the email address (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"0fca7bce-d2cd-40d2-9c75-64020fc8b0ea","name":"success","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"date\": 0,\r\n    \"sellId\": 0,\r\n    \"payload\": {\r\n      \"preBalance\": 0,\r\n      \"posBalance\": 0,\r\n      \"tmpBalance\": 0,\r\n      \"debt\": 0,\r\n      \"billData\": {\r\n        \"fields\": [\r\n          {\r\n            \"name\": \"string\",\r\n            \"type\": \"string\",\r\n            \"options\": [\r\n              {\r\n                \"label\": \"string\",\r\n                \"value\": \"string\"\r\n              }\r\n            ],\r\n            \"label\": \"string\",\r\n            \"placeholder\": \"string\",\r\n            \"required\": true\r\n          }\r\n        ],\r\n        \"costs\": [\r\n          {\r\n            \"label\": \"string\",\r\n            \"value\": 0\r\n          }\r\n        ],\r\n        \"messages\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"stringInformation\": [\r\n          {\r\n            \"value\": \"string\"\r\n          }\r\n        ],\r\n        \"footerInformation\": [\r\n          {}\r\n        ],\r\n        \"share\": {\r\n          \"cellphone\": \"string\",\r\n          \"message\": \"string\"\r\n        }\r\n      }\r\n    }\r\n  }\r\n}"},{"id":"3a091af9-4087-4cbc-b61b-a4832e6be1c5","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"62d6136f-8088-4d5c-915b-6398bbde0d51","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"37f6f8f3-e57f-44ac-ab15-5512c4f1819e","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"6219cf70-bd4a-40c4-91f5-a5cddc5fc3c1","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"9fcde16f-a2e8-4ba2-baf7-1d54020ff2fd","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"a767f140-6cf9-41ae-b588-015e5cc9a4d0","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"cellphone\": \"3104784242\",\r\n        \"email\": \"fake@refacil.com\"\r\n    },\r\n    \"productId\": 1014004\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"a14a1ba4-b9f5-460e-b079-a42e72b83fa3"}],"id":"6388fb5c-9934-493f-abdc-ef244ba8b764","_postman_id":"6388fb5c-9934-493f-abdc-ef244ba8b764","description":""}],"id":"c22e8ff1-bb06-448a-82d9-5d2d9e882784","description":"<p>Here you will find all the endpoints related to the sale of pins.</p>\n<p><strong>Note:</strong> Sales related to pin products are returned in the 'extra' field, where the encrypted PIN in base64 format is included. This is the PIN that you must decrypt and send to the customer, as we cannot send it to your customers for internal policy reasons.</p>\n","_postman_id":"c22e8ff1-bb06-448a-82d9-5d2d9e882784"},{"name":"Energy","item":[{"name":"EPM","item":[{"name":"query","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"0e1f5ec0-25e4-46b2-8621-ca0baf00c018","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"ConfirmData\",\r\n    \"productId\": 231,\r\n    \"data\": {\r\n        \"carrierId\": 231,\r\n        \"cellphone\": \"3203550000\",\r\n        \"amount\": 10000,\r\n        \"reference\": \"1234567\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h1 id=\"query-product\">Query Product</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Performs the pre-sale query for <strong>PIN flows</strong>, obtaining data such as reference, hash, and amount associated with the PIN purchase. The returned <code>hashEchoData</code> value must be forwarded in the subsequent sell request when completing the PIN transaction. If the response contains only one of the two hash fields, the API automatically mirrors it to the other.</p>\n<p>If the request fails with the errorCode <code>product.errors.disabled</code> or a similar code indicating that the product is inactive, the agreements must be consulted again using the search service.</p>\n<hr />\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><strong><code>productId</code></strong> (number) <strong>required</strong> – Identifier of the product to query.</p>\n</li>\n<li><p><strong><code>queryType</code></strong> (string) <strong>required</strong> – Type of query associated with the PIN flow.<br />  Example: <code>ConfirmData</code>. Min length: 1.</p>\n</li>\n<li><p><strong><code>data</code></strong> (object) <strong>required</strong> – Specific provider data for the PIN flow.</p>\n<ul>\n<li><p><strong><code>reference</code></strong> (string) <strong>required</strong> – Reference associated with the PIN transaction.</p>\n</li>\n<li><p><strong><code>cellphone</code></strong> (string) <strong>required</strong> – Cellphone number associated with the PIN transaction.</p>\n</li>\n<li><p><strong><code>amount</code></strong> (number) <strong>required</strong> – Amount of the PIN purchase.</p>\n</li>\n<li><p><strong><code>carrierId</code></strong> (number) <strong>required</strong> – Identifier of the carrier/operator.<br />  This field <strong>must have the same value as</strong> <strong><code>productId</code></strong>.</p>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.productId.number</code></td>\n<td><code>El campo productId debe ser de tipo Numerico</code></td>\n<td><code>productId</code> is absent or not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.required</code></td>\n<td><code>El campo queryType es obligatorio.</code></td>\n<td><code>queryType</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isString</code></td>\n<td><code>El campo queryType debe ser de tipo string</code></td>\n<td><code>queryType</code> is not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isNotEmpty</code></td>\n<td><code>El campo queryType no puede estar vacío.</code></td>\n<td><code>queryType</code> is empty or whitespace-only</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>data must be an object</code></td>\n<td><code>data</code> is present but not an object</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>ownAgreementId must be a number</code></td>\n<td><code>ownAgreementId</code> is present but not a number</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.notFound</code> / <code>product.not.found</code></td>\n<td><code>Producto no encontrado</code></td>\n<td>Product does not exist or is unavailable</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.disabled</code></td>\n<td><code>Producto deshabilitado</code></td>\n<td>Product is disabled — re-fetch agreements using the search service</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.providers.notFound</code></td>\n<td><code>El producto no tiene un proveedor.</code></td>\n<td>No provider associated with the product</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.metadata.invalid</code></td>\n<td><code>Los metadatos del convenio no tienen un formato válido</code></td>\n<td>Agreement metadata is invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>overdue.reference</code></td>\n<td><code>Esta referencia ya se encuentra vencida.</code></td>\n<td>Reference is overdue — do not retry with same reference</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>closed.reference</code></td>\n<td><code>Esta referencia ya se encuentra cerrada.</code></td>\n<td>Reference is closed</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Important:</strong> This request will be processed within a timeout of <strong>30,000 milliseconds (30 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"6bf54842-9387-4aec-9d76-be771bb03500","name":"Valid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62540210\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:14:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1020"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"3fc-08/BQd1GoTgQFWomzneceJEUUvU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1773101286314,\n        \"payload\": {\n            \"amount\": 9999,\n            \"productId\": 2010910,\n            \"productName\": \"Facturas Otros SP\",\n            \"reference\": \"63440172\",\n            \"reference2\": null,\n            \"hashEchoData\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\",\n            \"amountEditable\": false,\n            \"hash\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\"\n        }\n    }\n}"},{"id":"347ca2c0-6f1b-4f5f-8313-35ec456f1987","name":"Invalid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"63440172\" \r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:20:35 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"142"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"8e-79rXl2moVmD3ZT3SgdvPXJ6Sb+U\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Número de obligación o de factura inválido o no existe.\",\n    \"timestamp\": 1718043635033\n}"},{"id":"ca9baac9-5234-413c-8756-e9ff766ee761","name":"Reference already paid","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62970322\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:19:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"111"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"6f-3dDmq8rugT3rKm4gar26pe6UYMw\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Este pago ya fue realizado.\",\n    \"timestamp\": 1718043587188\n}"}],"_postman_id":"0e1f5ec0-25e4-46b2-8621-ca0baf00c018"},{"name":"sell","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"1d05a749-1072-402a-baf1-f248ecf836b5","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 231,\r\n    \"amount\": 10000,\r\n    \"data\": {\r\n        \"plan\": \"AP\",\r\n        \"reference\": \"1234567\",\r\n        \"cellphone\": \"3203550000\",\r\n        \"hashEchoData\": \"eyJub21icmVfY2xpZW50ZSI6IkVMU1kgU0VyVklDRSIsImRpcmVjY2lvbiI6IlVSQiBWSUxMQSBWSUNUT1JJQSBDQVNBIDEwMyAtIFNBTiBNQVJUSU4iLCJkbmlfY2xpZW50ZSI6IjM5MDIyMDMxIiwiY29udHJhdG8iOiIxMjM0NTY3IiwidmFsb3JfdmVudGEiOiIxMDAwMCIsInBsYW4iOiIiLCJ0eXBlIjoiIn0=\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<h3 id=\"timeout-configuration\">Timeout Configuration</h3>\n<p>The timeout value specified below is directly established by the provider and must be taken into account in integrations.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Maximum Timeout</strong></td>\n<td>150 seconds</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"request-schema\">Request Schema</h3>\n<ul>\n<li><strong><code>productId</code></strong>: Number representing the product identifier (<strong>required</strong>).</li>\n<li><strong><code>amount</code></strong>: Number representing the amount of the payment. <strong>Minimum value: 10,000</strong> (<strong>required</strong>).</li>\n<li><strong><code>data</code></strong>: Object containing additional data (<strong>required</strong>):<ul>\n<li><strong><code>plan</code></strong>: String that identifies the type of plan for the payment (<strong>required</strong>).<br />The value must indicate whether the plan includes public lighting or not:<ul>\n<li><code>AP</code>: Plan <strong>with</strong> public lighting (<em>Alumbrado público</em>).</li>\n<li><code>SP</code>: Plan <strong>without</strong> public lighting (<em>Sin alumbrado público</em>).</li>\n</ul>\n</li>\n<li><strong><code>reference</code></strong>: String containing the reference number for the payment (<strong>required</strong>).</li>\n<li><strong><code>cellphone</code></strong>: String containing the cellphone number associated with the payment (<strong>required</strong>).</li>\n<li><strong><code>hashEchoData</code></strong>: String containing the hash echo data for the operation (<strong>required</strong>).</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"3ae96d1c-af7c-4627-aa83-fc1b951f883c","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 231,\r\n    \"amount\": 10000,\r\n    \"data\": {\r\n        \"plan\": \"AP\",\r\n        \"reference\": \"1234567\",\r\n        \"cellphone\": \"3203550000\",\r\n        \"hashEchoData\": \"eyJub21icmVfY2xpZW50ZSI6IkVMU1kgU0VyVklDRSIsImRpcmVjY2lvbiI6IlVSQiBWSUxMQSBWSUNUT1JJQSBDQVNBIDEwMyAtIFNBTiBNQVJUSU4iLCJkbmlfY2xpZW50ZSI6IjM5MDIyMDMxIiwiY29udHJhdG8iOiIxMjM0NTY3IiwidmFsb3JfdmVudGEiOiIxMDAwMCIsInBsYW4iOiIiLCJ0eXBlIjoiIn0=\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 12 Sep 2024 14:17:34 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1645"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"66d-reV9akHNAEyJsMZt6DL2w2U7AN8\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1726150654327,\n        \"payload\": {\n            \"posBalance\": \"$9,940,000.00\",\n            \"tmpBalance\": \"$1,722.50\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"Energia Prepago EPM\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-09-12\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"09:17:33\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187625\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"62312365960311326486\"\n                    },\n                    {\n                        \"label\": \"Número\",\n                        \"value\": \"12345\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Pin\",\n                        \"value\": \"INFO: Digita los siguientes PINES de actualización a tu medidor, en orden y de manera consecutiva, antes de ingresar tu pin de recarga: PIN 1: 73500000000000000000 PIN 2: 87300000000000000000 PIN RECARGA 4550 5251 8282 9004 3494.\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 6000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"value\": \"Recarga valida por el operador\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": \"3104587572\",\n                    \"message\": \"¡Hola!, has comprado (Energia Prepago EPM) por valor de $6000, este es el código de la venta 441187625. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348212/441187625\"\n                }\n            },\n            \"sale\": {\n                \"id\": 441187625,\n                \"userId\": 348212,\n                \"amount\": 6000,\n                \"serviceNumber\": \"12345\",\n                \"status\": 1,\n                \"productId\": 231,\n                \"createdAt\": \"2024-09-12T14:17:33.000Z\",\n                \"transactionId\": \"62312365960311326486\",\n                \"extra\": \"INFO: Digita los siguientes PINES de actualización a tu medidor, en orden y de manera consecutiva, antes de ingresar tu pin de recarga: PIN 1: 73500000000000000000 PIN 2: 87300000000000000000 PIN RECARGA 4550 5251 8282 9004 3494.\"\n            }\n        }\n    }\n}"},{"id":"e26f6d8a-3a33-4fb9-b533-d0b6e0527f0e","name":"failed minimum recharge value","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 230,\r\n    \"amount\": 5000,\r\n    \"data\": {\r\n        \"cellphone\": \"3104587572\",\r\n        \"reference\": \"12345\",\r\n        \"plan\": \"AP\",\r\n        \"type\": \"PT\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 500,\n    \"errorCode\": \"\",\n    \"message\": \"El valor mínimo de recarga es de $10000\",\n    \"timestamp\": 1772228804121,\n    \"path\": \"/sells/sell\",\n    \"date\": 1772228804122\n}"},{"id":"29d3542f-9d10-42f9-a1f5-6dfded7bcb1d","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"4df15895-0609-4300-9841-4fab2410d5a8","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"039b6408-c38f-49c6-907b-1f695ba8cee2","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"429e197c-ca8c-4927-9c2c-a259568eee72","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"3af0c699-1eb2-4794-896c-75f206038c61","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"63f4ec65-1b1d-41d2-b08c-9a606a164a2e","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"1d05a749-1072-402a-baf1-f248ecf836b5"}],"id":"60607589-31a4-454d-8548-a37080e7d590","_postman_id":"60607589-31a4-454d-8548-a37080e7d590","description":""},{"name":"ESSA","item":[{"name":"query","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"e29858d7-7148-4cfd-ad14-fdd3ab95bd9e","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"queryType\": \"ConfirmData\",\r\n    \"productId\": 230,\r\n    \"data\": {\r\n        \"carrierId\": 230,\r\n        \"cellphone\": \"3203550000\",\r\n        \"amount\": 10000,\r\n        \"reference\": \"1234567\",\r\n        \"plan\": \"AP\",\r\n        \"type\": \"PT\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","description":"<hr />\n<h1 id=\"query-product\">Query Product</h1>\n<hr />\n<h3 id=\"description\">Description</h3>\n<p>Performs the pre-sale query for <strong>PIN flows</strong>, obtaining data such as reference, hash, and amount associated with the PIN purchase. The returned <code>hashEchoData</code> value must be forwarded in the subsequent sell request when completing the PIN transaction. If the response contains only one of the two hash fields, the API automatically mirrors it to the other.</p>\n<p>If the request fails with the errorCode <code>product.errors.disabled</code> or a similar code indicating that the product is inactive, the agreements must be consulted again using the search service.</p>\n<hr />\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p><strong><code>productId</code></strong> (number) <strong>required</strong> – Identifier of the product to query.</p>\n</li>\n<li><p><strong><code>queryType</code></strong> (string) <strong>required</strong> – Type of query associated with the PIN flow.<br />  Example: <code>ConfirmData</code>. Min length: 1.</p>\n</li>\n<li><p><strong><code>data</code></strong> (object) <strong>required</strong> – Specific provider data for the PIN flow.</p>\n<ul>\n<li><p><strong><code>reference</code></strong> (string) <strong>required</strong> – Reference associated with the PIN transaction.</p>\n</li>\n<li><p><strong><code>cellphone</code></strong> (string) <strong>required</strong> – Cellphone number associated with the PIN transaction.</p>\n</li>\n<li><p><strong><code>amount</code></strong> (number) <strong>required</strong> – Amount of the PIN purchase.</p>\n</li>\n<li><p><strong><code>carrierId</code></strong> (number) <strong>required</strong> – Identifier of the carrier/operator.<br />  This field <strong>must have the same value as</strong> <strong><code>productId</code></strong>.</p>\n</li>\n<li><p><strong><code>plan</code></strong> (string) <strong>required</strong> – Identifies the type of plan associated with the transaction.<br />  Allowed values:</p>\n<ul>\n<li><p><code>AP</code>: Plan with public lighting (<em>Alumbrado público</em>).</p>\n</li>\n<li><p><code>SP</code>: Plan without public lighting (<em>Sin alumbrado público</em>).</p>\n</li>\n</ul>\n</li>\n<li><p><strong><code>type</code></strong> (string) <strong>required</strong> – Identifies the type of payment.<br />  Allowed values:</p>\n<ul>\n<li><p><code>PT</code>: Total payment (<em>Pago Total</em>).</p>\n</li>\n<li><p><code>PM</code>: Minimum payment (<em>Pago Mínimo</em>).</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.productId.number</code></td>\n<td><code>El campo productId debe ser de tipo Numerico</code></td>\n<td><code>productId</code> is absent or not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.required</code></td>\n<td><code>El campo queryType es obligatorio.</code></td>\n<td><code>queryType</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isString</code></td>\n<td><code>El campo queryType debe ser de tipo string</code></td>\n<td><code>queryType</code> is not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.queryType.isNotEmpty</code></td>\n<td><code>El campo queryType no puede estar vacío.</code></td>\n<td><code>queryType</code> is empty or whitespace-only</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>data must be an object</code></td>\n<td><code>data</code> is present but not an object</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>ownAgreementId must be a number</code></td>\n<td><code>ownAgreementId</code> is present but not a number</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.notFound</code> / <code>product.not.found</code></td>\n<td><code>Producto no encontrado</code></td>\n<td>Product does not exist or is unavailable</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.disabled</code></td>\n<td><code>Producto deshabilitado</code></td>\n<td>Product is disabled — re-fetch agreements using the search service</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.providers.notFound</code></td>\n<td><code>El producto no tiene un proveedor.</code></td>\n<td>No provider associated with the product</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.metadata.invalid</code></td>\n<td><code>Los metadatos del convenio no tienen un formato válido</code></td>\n<td>Agreement metadata is invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>overdue.reference</code></td>\n<td><code>Esta referencia ya se encuentra vencida.</code></td>\n<td>Reference is overdue — do not retry with same reference</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>closed.reference</code></td>\n<td><code>Esta referencia ya se encuentra cerrada.</code></td>\n<td>Reference is closed</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Important:</strong> This request will be processed within a timeout of <strong>30,000 milliseconds (30 seconds)</strong>.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"4871e716-a5e0-4a28-bea0-cbccb7b4595f","name":"Valid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62540210\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:14:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1020"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"3fc-08/BQd1GoTgQFWomzneceJEUUvU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1773101286314,\n        \"payload\": {\n            \"amount\": 9999,\n            \"productId\": 2010910,\n            \"productName\": \"Facturas Otros SP\",\n            \"reference\": \"63440172\",\n            \"reference2\": null,\n            \"hashEchoData\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\",\n            \"amountEditable\": false,\n            \"hash\": \"eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9\"\n        }\n    }\n}"},{"id":"e0a84b22-ae75-4c1e-91d9-1a3e76027e7d","name":"Invalid reference","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"63440172\" \r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:20:35 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"142"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"8e-79rXl2moVmD3ZT3SgdvPXJ6Sb+U\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Número de obligación o de factura inválido o no existe.\",\n    \"timestamp\": 1718043635033\n}"},{"id":"9676669e-1d75-4897-8bc9-6752a165ac12","name":"Reference already paid","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 1000075,\r\n    \"queryType\": \"BILLData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"reference\": \"62970322\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:19:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"111"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"6f-3dDmq8rugT3rKm4gar26pe6UYMw\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Este pago ya fue realizado.\",\n    \"timestamp\": 1718043587188\n}"}],"_postman_id":"e29858d7-7148-4cfd-ad14-fdd3ab95bd9e"},{"name":"sell","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"39fc49cb-fe0f-4300-9733-933997e1c0f2","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 230,\r\n    \"amount\": 10000,\r\n    \"data\": {\r\n        \"cellphone\": \"3203550000\",\r\n        \"plan\": \"AP\",\r\n        \"reference\": \"1234567\",\r\n        \"hashEchoData\": \"eyJub21icmVfY2xpZW50ZSI6IkVMU1kgU0VyVklDRSIsImRpcmVjY2lvbiI6IlVSQiBWSUxMQSBWSUNUT1JJQSBDQVNBIDEwMyAtIFNBTiBNQVJUSU4iLCJkbmlfY2xpZW50ZSI6IjM5MDIyMDMxIiwiY29udHJhdG8iOiIxMjM0NTY3IiwidmFsb3JfdmVudGEiOiIxMDAwMCIsInZhbG9yX2FzZW8iOjUwMDAsInZhbG9yX2VuZXJnaWEiOjUwMDAsImNlbHVsYXIiOiIzMjAzNTUwMDAwIiwiaWRDb25maXJtYWNpb24iOiJzZGpha3NkamRqYS1kYXMwZGRhbnNkMDItZnNhZGthc2RrNTYiLCJwbGFuIjoiQVAiLCJ0eXBlIjoiUFQifQ==\",\r\n        \"type\": \"PT\",\r\n        \"valorAseo\": 5000,\r\n        \"valorEnergia\": 5000\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>Allows performing a sale on the platform. Send the request body with the necessary parameters for the sale in the format specified by the SellBody object. This operation will return a response that includes information about the sale in case of success.</p>\n<p><strong>Note</strong>: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.</p>\n<h3 id=\"timeout-configuration\">Timeout Configuration</h3>\n<p>The timeout value specified below is directly established by the provider and must be taken into account in integrations.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Maximum Timeout</strong></td>\n<td>150 seconds</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"request-schema\">Request Schema</h3>\n<ul>\n<li><p><strong><code>productId</code></strong> (number) <strong>required</strong> – Identifier of the product.</p>\n</li>\n<li><p><strong><code>amount</code></strong> (number) <strong>required</strong> – Amount of the payment.<br /><strong>Minimum value: 10,000</strong>.</p>\n</li>\n<li><p><strong><code>hash</code></strong> (string) <strong>required</strong> – Hash value for the operation.</p>\n</li>\n<li><p><strong><code>data</code></strong> (object) <strong>required</strong> – Additional data for the payment.</p>\n<ul>\n<li><strong><code>reference</code></strong> (string) <strong>required</strong> – Reference number for the payment.</li>\n<li><strong><code>cellphone</code></strong> (string) <strong>required</strong> – Cellphone number associated with the payment.</li>\n<li><strong><code>hashEchoData</code></strong> (string) <strong>required</strong> – Hash echo data for the operation.</li>\n<li><strong><code>plan</code></strong> (string) <strong>required</strong> – Identifies the type of plan associated with the transaction.<br />Allowed values:<ul>\n<li><code>AP</code>: Plan with public lighting (<em>Alumbrado público</em>).</li>\n<li><code>SP</code>: Plan without public lighting (<em>Sin alumbrado público</em>).</li>\n</ul>\n</li>\n<li><strong><code>type</code></strong> (string) <strong>required</strong> – Identifies the type of payment.<br />Allowed values:<ul>\n<li><code>PT</code>: Total payment (<em>Pago Total</em>).</li>\n<li><code>PM</code>: Minimum payment (<em>Pago Mínimo</em>).</li>\n</ul>\n</li>\n<li><strong><code>valorAseo</code></strong> (number) <strong>required</strong> – Cleaning/garbage charge amount associated with the transaction.<br />This value <strong>must be taken from the response of the previous <code>query</code> operation</strong>.</li>\n<li><strong><code>valorEnergia</code></strong> (number) <strong>required</strong> – Energy charge amount associated with the transaction.<br />This value <strong>must be taken from the response of the previous <code>query</code> operation</strong>.</li>\n</ul>\n</li>\n</ul>\n<hr />\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>message</code>: String containing a message about the operation result (required)</p>\n</li>\n<li><p><code>messageCode</code>: String code indicating the operation result (required)</p>\n</li>\n<li><p><code>data</code>: Object containing additional response data (required)</p>\n<ul>\n<li><p><code>date</code>: Number representing the timestamp of the operation (required)</p>\n</li>\n<li><p><code>sellId</code>: Number representing the identifier of the sell operation (required)</p>\n</li>\n<li><p><code>payload</code>: Object containing the main response data (required)</p>\n<ul>\n<li><p><code>preBalance</code>: Number representing the balance before the operation (required)</p>\n</li>\n<li><p><code>posBalance</code>: Number representing the balance after the operation (required)</p>\n</li>\n<li><p><code>tmpBalance</code>: Number representing the temporary balance (required)</p>\n</li>\n<li><p><code>debt</code>: Number representing the debt amount (required)</p>\n</li>\n<li><p><code>billData</code>: Object containing bill-related data (required)</p>\n<ul>\n<li><p><code>fields</code>: Array of field objects (required)</p>\n<ul>\n<li><p><code>name</code>: String representing the field name (required)</p>\n</li>\n<li><p><code>type</code>: String representing the field type (required)</p>\n</li>\n<li><p><code>options</code>: Array of option objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the option label (required)</p>\n</li>\n<li><p><code>value</code>: String representing the option value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>label</code>: String representing the field label (required)</p>\n</li>\n<li><p><code>placeholder</code>: String representing the field placeholder (required)</p>\n</li>\n<li><p><code>required</code>: Boolean indicating if the field is required (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>costs</code>: Array of cost objects (required)</p>\n<ul>\n<li><p><code>label</code>: String representing the cost label (required)</p>\n</li>\n<li><p><code>value</code>: Number representing the cost value (required)</p>\n</li>\n</ul>\n</li>\n<li><p><code>messages</code>: Array of message objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the message value (required)</li>\n</ul>\n</li>\n<li><p><code>stringInformation</code>: Array of string information objects (required)</p>\n<ul>\n<li><code>value</code>: String representing the string information value (required)</li>\n</ul>\n</li>\n<li><p><code>footerInformation</code>: Array of footer information objects (required)</p>\n</li>\n<li><p><code>share</code>: Object containing share information (required)</p>\n<ul>\n<li><p><code>cellphone</code>: String representing the cellphone number (required)</p>\n</li>\n<li><p><code>message</code>: String representing the message (required)</p>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"5a82ad9c-2fe6-449b-856b-c19c2be7ba7c","name":"success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 230,\r\n    \"amount\": 13000,\r\n    \"data\": {\r\n        \"cellphone\": \"3104587572\",\r\n        \"reference\": \"12345\",\r\n        \"plan\": \"AP\",\r\n        \"type\": \"PT\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 12 Sep 2024 14:17:34 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1645"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"66d-reV9akHNAEyJsMZt6DL2w2U7AN8\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1726150654327,\n        \"payload\": {\n            \"posBalance\": \"$9,940,000.00\",\n            \"tmpBalance\": \"$1,722.50\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"Energia Prepago EPM\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-09-12\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"09:17:33\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187625\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"62312365960311326486\"\n                    },\n                    {\n                        \"label\": \"Número\",\n                        \"value\": \"12345\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Pin\",\n                        \"value\": \"INFO: Digita los siguientes PINES de actualización a tu medidor, en orden y de manera consecutiva, antes de ingresar tu pin de recarga: PIN 1: 73500000000000000000 PIN 2: 87300000000000000000 PIN RECARGA 4550 5251 8282 9004 3494.\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 6000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [\n                    {\n                        \"value\": \"Recarga valida por el operador\"\n                    }\n                ],\n                \"share\": {\n                    \"cellphone\": \"3104587572\",\n                    \"message\": \"¡Hola!, has comprado (Energia Prepago EPM) por valor de $6000, este es el código de la venta 441187625. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348212/441187625\"\n                }\n            },\n            \"sale\": {\n                \"id\": 441187625,\n                \"userId\": 348212,\n                \"amount\": 6000,\n                \"serviceNumber\": \"12345\",\n                \"status\": 1,\n                \"productId\": 231,\n                \"createdAt\": \"2024-09-12T14:17:33.000Z\",\n                \"transactionId\": \"62312365960311326486\",\n                \"extra\": \"INFO: Digita los siguientes PINES de actualización a tu medidor, en orden y de manera consecutiva, antes de ingresar tu pin de recarga: PIN 1: 73500000000000000000 PIN 2: 87300000000000000000 PIN RECARGA 4550 5251 8282 9004 3494.\"\n            }\n        }\n    }\n}"},{"id":"32efe8fa-1902-4fef-a738-6f73c561780b","name":"failed minimum recharge value","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 230,\r\n    \"amount\": 5000,\r\n    \"data\": {\r\n        \"cellphone\": \"3104587572\",\r\n        \"reference\": \"12345\",\r\n        \"plan\": \"AP\",\r\n        \"type\": \"PT\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 500,\n    \"errorCode\": \"\",\n    \"message\": \"El valor mínimo de recarga es de $10000\",\n    \"timestamp\": 1772228804121,\n    \"path\": \"/sells/sell\",\n    \"date\": 1772228804122\n}"},{"id":"00daa846-23a6-4429-ba78-2faa1a9b6009","name":"failed bad request","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Bad request.\",\r\n  \"messageCode\": \"04\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"6dc0ce43-f571-4368-a397-0266af2a7b04","name":"failed unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Authentication not found.\",\r\n  \"messageCode\": \"01\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"fbf70b8f-35f0-452c-a637-fbe7b0239b87","name":"failed not found","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Not found.\",\r\n  \"messageCode\": \"05\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"9c58f093-1359-4c50-9440-abed80243f9e","name":"failed internal server error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Internal Server Error","code":500,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"An unexpected error has occurred.\",\r\n  \"messageCode\": \"09\",\r\n  \"data\": {},\r\n  \"code\": \"string\",\r\n  \"errorCode\": \"string\",\r\n  \"statusCode\": 0,\r\n  \"timestamp\": 0\r\n}"},{"id":"473bd619-a605-4794-8c47-d38c4e22f545","name":"failed luck and chance error","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Error al procesar la solicitud para Luck And Chance\"\r\n}"},{"id":"7e914930-d890-4e16-a318-b8c916ea84a0","name":"failed luck and chance unauthorized","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"No autorizado para realizar la venta de Luck And Chance\"\r\n}"}],"_postman_id":"39fc49cb-fe0f-4300-9733-933997e1c0f2"}],"id":"37325f95-1231-45cb-adbe-ddc6fc26d9c1","_postman_id":"37325f95-1231-45cb-adbe-ddc6fc26d9c1","description":""}],"id":"f6c5f1f9-dd89-4ac5-a3b1-8e5f5226287f","_postman_id":"f6c5f1f9-dd89-4ac5-a3b1-8e5f5226287f","description":""}],"id":"13ca7bf0-df24-40b2-acb5-66c7c6b6edc9","_postman_id":"13ca7bf0-df24-40b2-acb5-66c7c6b6edc9","description":""},{"name":"Transfiya","item":[{"name":"query","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"a55b7f46-26cf-4ae6-89fe-c1cd322e03d3","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 240,\r\n    \"queryType\": \"saleData\",\r\n    \"ownAgreementId\": null,\r\n    \"data\": {\r\n        \"cellphone\":\"3125099489\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query","urlObject":{"protocol":"{{protocol}}","path":["product","query"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"213f0f87-09a7-405e-81ae-245b14e87352","name":"Success","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer MTcxMDQzNjY4MDkwNSQyYiQxMCRXOGtUZHlkOXVSM0FtM1puT2Vza3l1di92VnZtUTdaVGZGOWFnQUNta1NvRUxqY2c2ckJDaQ=="}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 240,\r\n    \"queryType\": \"saleData\",\r\n    \"data\": {\r\n        \"cellphone\":\"3051004403\"\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/product/query"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Mon, 10 Jun 2024 18:14:33 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1020"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"3fc-08/BQd1GoTgQFWomzneceJEUUvU\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Successfully\",\n        \"date\": 1723154779175,\n        \"payload\": {\n            \"banks\": [\n                {\n                \"name\": \"NEQUI\",\n                \"bankAccountNumber\": \"xxxxxxxxx4403\"\n                },\n                {\n                    \"name\": \"Bancolombia\",\n                    \"bankAccountNumber\": \"xxxxxxx9999\"\n                }\n            ]\n        }\n    }\n}"}],"_postman_id":"a55b7f46-26cf-4ae6-89fe-c1cd322e03d3"},{"name":"Sell | Transfiya - Withdrawals","id":"7aaa0444-c45d-4ad7-b98c-d1144ecdecd0","request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{tokenLoginRegister}}"}]},"isInherited":false},"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 20000,\n  \"webhookUrl\": \"https://my-webhook.com\",\n  \"data\": {\n    \"cellphone\": \"3051000090\",\n    \"bankName\": \"banco rojo\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<h1 id=\"sucessful-withdrawal-process\">Sucessful withdrawal process</h1>\n<img src=\"https://content.pstmn.io/73d6a308-4673-4a18-b603-56f04990312a/aW1hZ2UucG5n\" alt=\"Withdrawal%20secuence%20diagram\" width=\"844\" height=\"628\" />\n\n<p><strong>Step 1: POC requests transaction:</strong> The POC initiates a transaction request to the <strong>Integrator</strong>.</p>\n<p><strong>Step 2: Integrator forwards the request to Refacil API:</strong> The <strong>Integrator</strong> forwards the request to the <strong>Refacil API</strong> for further processing.</p>\n<p><strong>Step 3: Refacil API sends request to Transfiya:</strong> The <strong>Refacil API</strong> sends a request to <strong>Transfiya</strong> to create a transaction.</p>\n<p><strong>Step 4: Refacil creates pending transaction:</strong> The <strong>Refacil</strong> system creates a pending transaction and returns the response to the <strong>Integrator</strong>.</p>\n<p><strong>Step 5: Transfiya notifies banks by SMS: Transfiya</strong> sends SMS notification to the user and sends push notifications to all banks associated with the user, informing them about the pending transaction.</p>\n<p><strong>Step 6: User approves transaction:</strong> The end-user approves the transaction through bank application.</p>\n<p><strong>Step 7: Transfiya notifies Refacil API:</strong> Once the user approves the transaction, <strong>Transfiya</strong> sends a notification to the <strong>Refacil API</strong> indicating the status of the transaction.</p>\n<p><strong>Step 8: Refacil API notifies Integrator:</strong> The <strong>Refacil API</strong> notifies the <strong>Integrator</strong> of the transaction status, using a webhook mechanism. For each transaction state (in this case, PENDING), it sends data that includes the sale ID and transaction status.</p>\n<p><strong>Step 9: Transaction processing (If completed):</strong> If the transaction status changes to \"COMPLETED,\" the system processes the transaction by:</p>\n<ul>\n<li><p>Adding balance to the user's account.</p>\n</li>\n<li><p>Processing commissions related to the transaction.</p>\n</li>\n</ul>\n<h1 id=\"failed-withdrawal-process\">Failed withdrawal process</h1>\n<img src=\"https://content.pstmn.io/2205c66f-8681-40c4-8e40-50e6aa43d60f/aW1hZ2UucG5n\" width=\"767\" height=\"566\" />\n\n<p><strong>Step 1: POC requests transaction:</strong> The POC initiates a transaction request to the <strong>Integrator</strong>.</p>\n<p><strong>Step 2: Integrator forwards the request to Refacil API:</strong> The <strong>Integrator</strong> forwards the request to the <strong>Refacil API</strong> for further processing.</p>\n<p><strong>Step 3: Refacil API sends request to Transfiya:</strong> The <strong>Refacil API</strong> sends a request to <strong>Transfiya</strong> to create a transaction.</p>\n<p><strong>Step 4: Refacil creates pending transaction:</strong> The <strong>Refacil</strong> system creates a pending transaction and returns the response to the <strong>Integrator</strong>.</p>\n<p><strong>Step 5: Transfiya notifies banks by SMS: Transfiya</strong> sends SMS notification to the user and sends push notifications to all banks associated with the user, informing them about the pending transaction.</p>\n<p><strong>Step 6: User rejects the transaction:</strong> The user rejects the transaction, causing the process to fail.</p>\n<p><strong>Step 7: Transfiya notifies Refacil API:</strong> Once the user rejects the transaction, <strong>Transfiya</strong> sends a notification back to the <strong>Refacil API</strong>, indicating that the transaction has been marked as failed.</p>\n<p><strong>Step 8: Refacil API notifies Integrator:</strong> The <strong>Refacil API</strong> notifies the <strong>Integrator</strong> using a webhook, providing details about the failed transaction.</p>\n<p><strong>Step 9: Transaction marked as failed:</strong> If the transaction status changes to \"REJECTED,\" the transaction is officially marked as failed within the system.</p>\n<hr />\n<h3 id=\"test-phone-numbers\">Test Phone Numbers</h3>\n<p>Use the following phone numbers to simulate successful or failed withdrawal transactions in the testing environment:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Phone Number</th>\n<th>Expected Result</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>3051000090</td>\n<td>Successful</td>\n</tr>\n<tr>\n<td>3051000080</td>\n<td>Failed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"88785e66-f51c-464e-822a-bfbc4aa2d313","name":"Success","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 20000,\n  \"webhookUrl\": \"https://my-webhook.com\",\n  \"data\": {\n    \"cellphone\": \"3051000090\",\n    \"bankName\": \"banco rojo\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 29 Aug 2024 14:58:21 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"1187"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"4a3-aoVA3I7bVNm/Xfi0tNXDXphNWyg\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Solicitud de Retiro Exitosa\",\n        \"date\": 1724943501941,\n        \"payload\": {\n            \"posBalance\": \"$7,888,014.00\",\n            \"tmpBalance\": \"$6,500.00\",\n            \"debt\": 0,\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"Retiros\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-08-29\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"09:58:21\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 441187188\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"8QIH9bjQkHRP8dZKO\"\n                    },\n                    {\n                        \"label\": \"Código proveedor\",\n                        \"value\": \"8QIH9bjQkHRP8dZKO\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    },\n                    {\n                        \"label\": \"Nro cliente\",\n                        \"value\": \"3051000090\",\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 20000,\n                        \"type\": null,\n                        \"labelLink\": null\n                    }\n                ],\n                \"messages\": [],\n                \"share\": {\n                    \"cellphone\": \"3051000090\",\n                    \"message\": \"¡Hola!, has comprado (Retiros) por valor de $20000, este es el código de la venta 441187188. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/348024/441187188\"\n                }\n            },\n            \"isPending\": true,\n            \"sale\": {\n                \"id\": 441187188,\n                \"userId\": 348024,\n                \"amount\": 20000,\n                \"serviceNumber\": \"3051000090\",\n                \"status\": 1,\n                \"productId\": 241,\n                \"createdAt\": \"2024-08-29T14:58:21.000Z\",\n                \"transactionId\": \"8QIH9bjQkHRP8dZKO\",\n                \"extra\": null\n            }\n        }\n    }\n}"},{"id":"45485942-47de-484b-8138-48b313314434","name":"Amount out of range","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 2010,\n  \"data\": {\n    \"cellphone\": \"3051000002\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 17:02:06 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"133"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"85-lNzgwY3kvbR2x+HFIWiLP/S+/+I\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"El monto ingresado está fuera del rango aceptado\",\n    \"timestamp\": 1718125326534\n}"},{"id":"7302571c-476f-4e90-b45d-2461a9675849","name":"Cellphone required","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 20010,\n  \"data\": {\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 17:02:53 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"86-2HAOBwz459dUSzY7Zjj3niiU/MI\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Identificador de la venta incorrecto\",\n    \"timestamp\": 1718125373117,\n    \"saleId\": null\n}"},{"id":"2cfe948a-1682-42de-8c5c-b0cd10187f5f","name":"Cellphone without proper format","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 20010,\n  \"data\": {\n    \"cellphone\": \"30510000023\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 17:03:40 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"656"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"290-U908lqKXqtLhPGEkcYELKFo+oXI\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"cellphone must be shorter than or equal to 10 characters\",\n    \"timestamp\": 1718125420378,\n    \"saleId\": 431984508,\n    \"result\": {\n        \"status\": \"error\",\n        \"_request\": {\n            \"cellphone\": \"30510000023\",\n            \"amount\": 20010,\n            \"reference\": 431984508,\n            \"infoReference\": \"withdrawals\",\n            \"transactionId\": 302063,\n            \"description\": \"withdrawals\",\n            \"acceptSms\": \"¡Comercio PuebasQAVendo te solicito $20,010 por Transfiya!. Solo autoriza el retiro en tu app bancaria.\",\n            \"bankName\": \"BANCOLOMBIA\"\n        },\n        \"_result\": {\n            \"statusCode\": \"97\",\n            \"message\": \"cellphone must be shorter than or equal to 10 characters\"\n        },\n        \"message\": \"cellphone must be shorter than or equal to 10 characters\"\n    }\n}"},{"id":"07277be4-d7ac-423a-8ed8-6fd24d8dd7b2","name":"Out-of-range hours","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 241,\n  \"amount\": 20010,\n  \"data\": {\n    \"cellphone\": \"3051004402\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 20:35:47 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"165"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"a5-opEpHIKQuSaUUWVVnQFyA20RKng\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Recuerda que no puedes realizar transacciones antes/despues de la hora estipulada\",\n    \"timestamp\": 1718138147132\n}"}],"_postman_id":"7aaa0444-c45d-4ad7-b98c-d1144ecdecd0"},{"name":"Sell | Transfiya - Deposits","id":"82ebb2bf-612f-48c8-9f19-5a8875956f0a","protocolProfileBehavior":{"disabledSystemHeaders":{}},"request":{"auth":{"type":"bearer","bearer":{"basicConfig":[{"key":"token","value":"{{tokenLoginRegister}}"}]},"isInherited":false},"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 10100,\n  \"webhookUrl\": \"https://my-webhook.com\",\n  \"data\": {\n    \"cellphone\": \"3051000002\",\n    \"bankName\": \"banco rojo\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell","description":"<p>For deposits with the following numbers the following tests can be carried out.</p>\n<p>Automatically approved: 3051000002</p>\n<p>Automatically rejected: 3002491283</p>\n<h2 id=\"sucessful-deposit-process\">Sucessful deposit process</h2>\n<img src=\"https://content.pstmn.io/63835630-ee0d-4be2-952b-57c3d5c59ef6/aW1hZ2UucG5n\" alt height=\"545\" width=\"763\" />\n\n<p><strong>Step 1: POC initiates a request:</strong> The POC sends a request to the <strong>Integrator</strong> specifying a selected bank where the deposit should occur.</p>\n<p><strong>Step 2: Integrator sends request to Refacil API:</strong> The <strong>Integrator</strong> forwards the deposit request to the <strong>Refacil API</strong> for processing.</p>\n<p><strong>Step 3: Refacil API sends request to Transfiya:</strong> The <strong>Refacil API</strong> sends a request to <strong>Transfiya</strong> to create the transaction and process the deposit.</p>\n<p><strong>Step 4: Refacil API creates a successful transaction</strong>: The <strong>Refacil API</strong> creates a successful transaction and debits the corresponding balance from the system.</p>\n<p><strong>Step 5: Transfiya validates and processes the transaction: Transfiya</strong> validates the transaction and processes it successfully. It also makes sure that the transaction is ready for the deposit.</p>\n<p><strong>Step 6: Transfiya notifies and deposits to the selected bank: Transfiya</strong> sends a notification that the deposit is successful and proceeds to deposit the amount to the selected bank account.</p>\n<p><strong>Step 7: Refacil API receives a notification from Transfiya: Transfiya</strong> sends a notification back to the <strong>Refacil API</strong> indicating that the transaction has been successfully completed.</p>\n<p><strong>Step 8: Refacil API notifies Integrator:</strong> The <strong>Refacil API</strong> notifies the Integrator of the transaction status, using a webhook mechanism. For each transaction state (in this case, COMPLETED), it sends data that includes the sale ID and transaction status.</p>\n<p><strong>Step 9: Process commissions:</strong> If the transaction status changes to \"COMPLETED,\" The system processes commissions related to the transaction after the deposit is made.</p>\n<h1 id=\"failed-deposit-process\">Failed deposit process</h1>\n<img src=\"https://content.pstmn.io/52fc69a9-4395-4759-bae5-b13ec66cfe45/aW1hZ2UucG5n\" width=\"785\" height=\"574\" />\n\n<p><strong>Step 1: POC requests a deposit to a selected bank</strong>: The <strong>POC</strong> initiates a deposit request to the <strong>Integrator</strong>, specifying the selected bank.</p>\n<p><strong>Step 2: Integrator forwards the request to Refacil API:</strong> The <strong>Integrator</strong> sends the deposit request to the <strong>Refacil API</strong> for further processing.</p>\n<p><strong>Step 3: Refacil API sends a request to Transfiya:</strong> The <strong>Refacil API</strong> forwards the request to <strong>Transfiya</strong> to process the transaction.</p>\n<p><strong>Step 4: Refacil API creates a \"successful\" transaction and debits the balance:</strong> At this stage, the <strong>Refacil API</strong> debits the balance, assuming the transaction will be successful, and awaits confirmation from <strong>Transfiya</strong>.</p>\n<p><strong>Step 5: Transfiya validates the transaction and marks it as failed:</strong> <strong>Transfiya</strong> processes the transaction but finds an issue that causes the transaction to fail. It returns this failed status to the <strong>Refacil API</strong>.</p>\n<p><strong>Step 6: Refacil API notifies Integrator via webhook:</strong> The Refacil API sends a webhook notification to the Integrator, informing them that the transaction has failed. The <code>errorCode</code> provides the reason for the failure, while the <code>reversed</code> field indicates whether the balance has been refunded.</p>\n<p><strong>Step 7: Handling the reversal:</strong> If the <code>reversed</code> field is <code>false</code>, the system will need to manually create a ticket to refund the balance to the POC.</p>\n<p><strong>Step 8: Processing error and refund:</strong> If the error is marked as reversed (<code>reversed: true</code>), two actions will be taken:</p>\n<ul>\n<li><p><strong>Refund the balance</strong>: The debited amount is returned to the user's account.</p>\n</li>\n<li><p><strong>No commission processing</strong>: Since the transaction failed, no commissions are processed for this transaction.</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"test-phone-numbers\">Test Phone Numbers</h3>\n<p>Use the following phone numbers to simulate successful or failed deposit transactions in the testing environment:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Phone Number</th>\n<th>Expected Result</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>3051000002</td>\n<td>Successful</td>\n</tr>\n<tr>\n<td>3002491283</td>\n<td>Failed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["sells","sell"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"2071cdbc-0df5-4b34-9da3-9ca6710ecf4d","name":"Success","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 10100,\n  \"webhookUrl\": \"https://my-webhook.com\",\n  \"data\": {\n    \"cellphone\": \"3051004403\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 18 Jun 2024 13:15:56 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"872"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"368-MMcs29Mj1Y/SnNUTBbVIolFLwxA\""}],"cookie":[],"responseTime":null,"body":"{\n    \"messageCode\": \"00\",\n    \"message\": \"Operation successful.\",\n    \"data\": {\n        \"statusCode\": 200,\n        \"message\": \"Transacción Exitosa\",\n        \"date\": 1718716556368,\n        \"payload\": {\n            \"posBalance\": \"$55,633,688.00\",\n            \"tmpBalance\": \"$0.00\",\n            \"billData\": {\n                \"fields\": [\n                    {\n                        \"label\": \"Producto\",\n                        \"value\": \"Depósitos\"\n                    },\n                    {\n                        \"label\": \"Fecha:\",\n                        \"value\": \"2024-06-18\"\n                    },\n                    {\n                        \"label\": \"Hora:\",\n                        \"value\": \"08:15:56\"\n                    },\n                    {\n                        \"label\": \"Código:\",\n                        \"value\": 431984675\n                    },\n                    {\n                        \"label\": \"Código del proveedor:\",\n                        \"value\": \"\"\n                    },\n                    {\n                        \"label\": \"Código proveedor\",\n                        \"value\": \"3A5Hq7VC1eFChY3ny\"\n                    },\n                    {\n                        \"label\": \"Nro cliente\",\n                        \"value\": \"3051004403\"\n                    }\n                ],\n                \"costs\": [\n                    {\n                        \"label\": \"Valor venta\",\n                        \"value\": 10100\n                    }\n                ],\n                \"messages\": [],\n                \"share\": {\n                    \"cellphone\": \"3051004403\",\n                    \"message\": \"¡Hola!, has comprado (Depósitos) por valor de $10100, este es el código de la venta 431984675. A continuación podrás encontrar un link con el comprobante. https://plataforma.refacil.co/#/factura/302063/431984675\"\n                }\n            },\n            \"isPending\": false\n        }\n    }\n}"},{"id":"e0697382-2e07-4fae-9127-247209084414","name":"Amount out of range","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 3100000,\n   \"data\": {\n    \"cellphone\": \"3051000001\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 16:24:54 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"133"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"85-tnRsn1NCq2VSJhPOTWw6Opbz6kM\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"El monto ingresado está fuera del rango aceptado\",\n    \"timestamp\": 1718123094042\n}"},{"id":"9af9cd60-4fe3-4e55-9070-6f26c5f9f595","name":"Cellphone required","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 30000,\n   \"data\": {\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 16:29:54 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"86-txxklQiiy8sTI85SpMh2lStsde0\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Identificador de la venta incorrecto\",\n    \"timestamp\": 1718123394851,\n    \"saleId\": null\n}"},{"id":"2b03874d-3da7-452d-9c6e-e34b405e0716","name":"Cellphone without proper format","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 10100,\n   \"data\": {\n    \"cellphone\": \"30510000023\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 16:55:38 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"649"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"289-Xcrg2h5fhrMZ8L1sBKspBPjosXg\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"cellphone must be shorter than or equal to 10 characters\",\n    \"timestamp\": 1718124938002,\n    \"saleId\": 431984507,\n    \"result\": {\n        \"status\": \"error\",\n        \"_request\": {\n            \"cellphone\": \"30510000023\",\n            \"amount\": 10100,\n            \"reference\": 431984507,\n            \"infoReference\": \"deposits\",\n            \"transactionId\": 302063,\n            \"description\": \"deposits\",\n            \"acceptSms\": \"¡Comercio PuebasQAVendo te envio $10,100 por Transfiya!. Solo autoriza el deposito en tu app bancaria.\",\n            \"bankName\": \"BANCOLOMBIA\"\n        },\n        \"_result\": {\n            \"statusCode\": \"97\",\n            \"message\": \"cellphone must be shorter than or equal to 10 characters\"\n        },\n        \"message\": \"cellphone must be shorter than or equal to 10 characters\"\n    }\n}"},{"id":"1c5b4dba-0cd5-4bdb-b073-ab4b06d08214","name":"Out-of-range hours","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 10100,\n   \"data\": {\n    \"cellphone\": \"3051004402\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 20:37:15 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"165"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"a5-exjOE9b88kh7RA7Ybl3WXcbgAmE\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Recuerda que no puedes realizar transacciones antes/despues de la hora estipulada\",\n    \"timestamp\": 1718138235913\n}"},{"id":"0b4c7ee2-c589-471f-a685-a9eb9b713aae","name":"Cellphone not associated with transfiya","originalRequest":{"method":"POST","header":[{"key":"accept","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"},{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"productId\": 240,\n  \"amount\": 10100,\n   \"data\": {\n    \"cellphone\": \"3051004403\",\n    \"bankName\": \"BANCOLOMBIA\"\n  }\n}\n\n","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sell"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Tue, 11 Jun 2024 20:42:46 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"614"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"266-vOHCqSSeJLUHP3bbXxdxNvBpHiM\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Recurso no existe en el sistema del proveedor\",\n    \"timestamp\": 1718138566477,\n    \"saleId\": 431984522,\n    \"result\": {\n        \"status\": \"error\",\n        \"_request\": {\n            \"cellphone\": \"3051004403\",\n            \"amount\": 10100,\n            \"reference\": 431984522,\n            \"infoReference\": \"deposits\",\n            \"transactionId\": 302063,\n            \"description\": \"deposits\",\n            \"acceptSms\": \"¡Comercio PuebasQAVendo te envio $10,100 por Transfiya!. Solo autoriza el deposito en tu app bancaria.\",\n            \"bankName\": \"BANCOLOMBIA\"\n        },\n        \"_result\": {\n            \"statusCode\": 121,\n            \"message\": \"Recurso no existe en el sistema del proveedor\"\n        },\n        \"message\": \"Recurso no existe en el sistema del proveedor\"\n    }\n}"}],"_postman_id":"82ebb2bf-612f-48c8-9f19-5a8875956f0a"}],"id":"6aa0e1e0-7870-4423-9d6d-52b425b76af2","description":"<p>Here you will find all the endpoints related to Transfiya correspondent selling.</p>\n<p><strong>Note:</strong> The products associated with Transfiya Correspondent Sales have an administrative cost for each sale made. For more information, please contact your sales agent.</p>\n<h2 id=\"webhook\">Webhook</h2>\n<p>To sell productos assicieated with Transfiya in mandatory implemnt the webhook. Throught the webhook the status of the transaction is notified. The webhook is a local Refacil proxy that forward the notifications requests to the final webhook.</p>\n<img src=\"https://content.pstmn.io/cf2fe660-bd59-477e-8925-f9017ff37f6b/aW1hZ2UucG5n\" width=\"617\" height=\"398\" />\n\n<h3 id=\"authentication\">Authentication</h3>\n<p>The JWT is generated with a public and private key. Refacil will provide a public key to validate the JWT. Here is an example to validate the JWT:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-typescript\">import { verify } from 'jsonwebtoken';\nasync validateJwt(token: string): Promise&lt;any&gt; {\n    const publicKey = 'the public key provided by Refacil...';\n    try {\n      const decoded = verify(token, publicKey, {\n        algorithms: ['RS256'],\n      });\n      return {\n        valid: true,\n        message: 'Token is valid.',\n        data: decoded,\n      };   \n    } catch (error) {\n      if (error.name === 'JsonWebTokenError') {\n        throw new ForbiddenException('Invalid token.');\n      } else {\n        throw new UnauthorizedException('Token verification failed.');\n      }\n    }\n}\n\n</code></pre>\n<h3 id=\"webhook-request-body\">Webhook request body</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"saleId\": 438927666,\n  \"status\": 0,\n  \"transfiyaStatus\": \"PENDING\",\n  \"reversed\": true,\n  \"errorCode\": \"130\"\n}\n\n</code></pre>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Parameter</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>saleId</code></td>\n<td>ID of the sale returned by the sale request</td>\n</tr>\n<tr>\n<td><code>status</code></td>\n<td>Indicates the status of the sale:  <br /><code>0</code>: Failed  <br /><code>1</code>: Successful  <br /><code>9</code>: Pending</td>\n</tr>\n<tr>\n<td><code>transfiyaStatus</code></td>\n<td>The TransfiYa status, see the details below</td>\n</tr>\n<tr>\n<td><code>reversed</code></td>\n<td>This parameter is only used in deposits transactions.  <br />  <br />A boolean indicating if the balance was refunded to the POC:  <br /><code>true</code>: Refunded  <br /><code>false</code>: Not refunded  <br />  <br />When reversed is false, the balance was not refunded, and you should contact customer service using the contact details provided by your commercial agent</td>\n</tr>\n<tr>\n<td><code>errorCode</code></td>\n<td>The error code of the transaction, see the list below</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"webhook-request-example\">Webhook request example</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-bash\">curl --location --globoff 'https://acme.refacil.local/transfiYaNotifications' \\\n--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c' \\\n--header 'Content-Type: application/json' \\\n--data '{\n    \"saleId\": 438927666,\n    \"status\": 0,\n    \"transfiyaStatus\": \"REJECTED\",\n    \"reversed\": true,\n    \"errorCode\": \"TFYA302\"\n  }'\n\n</code></pre>\n<h2 id=\"transfiya-status\">TransfiYa Status</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>transfiyaStatus</strong></th>\n<th><strong>Withdrawal transaction status</strong></th>\n<th><strong>Deposits transaction status</strong></th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>CREATED</code></td>\n<td><code>9</code>: Pending</td>\n<td><code>1</code>: Successful</td>\n<td>Transfer is received and queued for processing.</td>\n</tr>\n<tr>\n<td><code>PENDING</code></td>\n<td><code>9</code>: Pending</td>\n<td><code>1</code>: Successful</td>\n<td>Transfer is valid and is waiting for the target to accept it.</td>\n</tr>\n<tr>\n<td><code>ACCEPTED</code></td>\n<td><code>9</code>: Pending</td>\n<td><code>1</code>: Successful</td>\n<td>Transfer has been accepted by the target, and payment is pending in the target bank.</td>\n</tr>\n<tr>\n<td><code>COMPLETED</code></td>\n<td><code>1</code>: Successful</td>\n<td><code>1</code>: Successful</td>\n<td>The payment is valid and completely processed, visible in the receiving bank account.</td>\n</tr>\n<tr>\n<td><code>REJECTED</code></td>\n<td><code>0</code>: Failed</td>\n<td><code>1</code>: Successful</td>\n<td>Payment was rejected.</td>\n</tr>\n<tr>\n<td><code>ERROR</code></td>\n<td><code>0</code>: Failed</td>\n<td><code>1</code>: Successful</td>\n<td>An error occurred during payment.</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"transfer-state-machine\">Transfer state machine</h3>\n<img src=\"https://content.pstmn.io/89f89557-2e1b-44c2-8dcb-d9e7d2f32c54/aW1hZ2UucG5n\" width=\"293\" height=\"380\" />\n\n<h2 id=\"error-codes\">Error Codes</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Code</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>TFYA307</td>\n<td>Cuenta inactiva</td>\n</tr>\n<tr>\n<td>TFYA309</td>\n<td>La cuenta no existe</td>\n</tr>\n<tr>\n<td>TFYA310</td>\n<td>La cuenta no está habilitada</td>\n</tr>\n<tr>\n<td>TFYA316</td>\n<td>Los datos transaccionales no son consistentes</td>\n</tr>\n<tr>\n<td>TFYA332</td>\n<td>Error bancario indefinido</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"6aa0e1e0-7870-4423-9d6d-52b425b76af2"}],"id":"b92d0648-b894-4469-8159-14b8767c529d","description":"<h3 id=\"description\">Description</h3>\n<p>Executes a sale or collection for any supported product.</p>\n<p>For invoice products (<code>Bills</code>), the <code>hash</code> and <code>hashEchoData</code> values returned by the preceding <code>/products/query</code> call must be included. For special products (Insurance, Packages, Recharges, etc.), refer to the specific request documentation within each subcategory.</p>\n<hr />\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><code>productId</code> (number) <code>required</code> - Product to sell.</li>\n<li><code>data</code> (object) <code>required</code> - Contextual sale data. The fields inside this object vary by product — refer to each product's specific request for the expected structure.<ul>\n<li><code>reference</code> (string) - Invoice or payment reference. Used for bill products.</li>\n<li><code>cellphone</code> (string) - Destination phone number. Used for top-ups and some bill products.</li>\n<li><code>phone</code> (string) - Alternative destination phone field. Used by some top-up providers.</li>\n<li><code>plate</code> (string) - Vehicle plate. Used for SOAT products.</li>\n<li><code>amount</code> (number) - Requested amount. Used for products without a fixed amount.</li>\n</ul>\n</li>\n<li><code>amount</code> (number) - Sale amount. Omit when the product has a fixed amount.</li>\n<li><code>sellType</code> (string) - Sale classification (<code>\"Bill\"</code>, <code>\"Topup\"</code>, etc.). Min length: 1 when sent.</li>\n<li><code>hash</code> (string) - Hash returned by the preceding query. Required for bill products. Min length: 1 when sent.</li>\n<li><code>moveTmpBalance</code> (boolean) - If <code>true</code>, instructs Movement to transfer temporary balance upon sale completion.</li>\n<li><code>webhookUrl</code> (string) - URL for post-sale notifications. Min length: 1 when sent.</li>\n<li><code>terminalId</code> (number) - Unique identifier of the PDV terminal processing the transaction. Enables special products for the selling user.</li>\n<li><code>commerceId</code> (number) - Commerce identifier. Used to attribute transactions to the correct business location when an integrator consolidates multiple commerces.</li>\n<li><code>_password</code> (string) - Second key required by certain products.</li>\n<li><code>expiresIn</code> (number) - Expiration time in seconds for webhook-based sales.</li>\n</ul>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><code>messageCode</code> (string) - Response status code.</li>\n<li><code>message</code> (string) - Response message.</li>\n<li><code>data</code> (object)<ul>\n<li><code>date</code> (number) - Sale timestamp.</li>\n<li><code>sellId</code> (number) - Sale identifier in Movement.</li>\n<li><code>payload</code> (object)<ul>\n<li><code>preBalance</code> (number) - Balance before the operation.</li>\n<li><code>posBalance</code> (number) - Balance after the operation.</li>\n<li><code>tmpBalance</code> (number) - Remaining temporary balance.</li>\n<li><code>debt</code> (number) - Outstanding debt, if applicable.</li>\n<li><code>billData</code> (object)<ul>\n<li><code>fields</code> (array) - Receipt field objects.<ul>\n<li><code>label</code> (string) - Field label.</li>\n<li><code>value</code> (any) - Value associated with the label.</li>\n</ul>\n</li>\n<li><code>costs</code> (array) - Cost detail objects.</li>\n<li><code>messages</code> (array) - Additional message objects.</li>\n<li><code>stringInformation</code> (array) - Complementary legend strings.</li>\n<li><code>footerInformation</code> (array) - Footer information for the receipt.</li>\n<li><code>share</code> (object)<ul>\n<li><code>cellphone</code> (string) - Phone number to share the transaction.</li>\n<li><code>message</code> (string) - Suggested text to share.</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n","_postman_id":"b92d0648-b894-4469-8159-14b8767c529d"},{"name":"get sale","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"7586e57b-bbce-42aa-8458-6d5e744ad206","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"productId\": 52683,\r\n    \"amount\": 50600,\r\n    \"sellType\": \"Bill\",\r\n    \"hash\": \"{{hash}}\",\r\n    \"data\": {\r\n        \"reference\": \"123456\",\r\n        \"cellphone\": \"3203557642\",\r\n        \"hashEchoData\": \"{{hashEchoData}}\"\r\n    }\r\n}\r\n\r\n\r\n\r\n","options":{"raw":{"language":"json"}}},"url":"{{serverNameCommerceApi}}/sells/sale/{saleId}","description":"<hr />\n<h2 id=\"description\">Description</h2>\n<p>This method allows you to obtain the details of a sale by providing the unique identifier of the sale.</p>\n<hr />\n<h2 id=\"request-schema\">Request Schema</h2>\n<ul>\n<li><code>saleId</code>: nique identifier of the sale. It can be found in the sell response as 'saleId', 'sellId', or 'codigo'.</li>\n</ul>\n<h2 id=\"response-schema\">Response Schema</h2>\n<ul>\n<li><p><code>id</code>: Unique identifier of the sale. 'sellId', or 'codigo'.</p>\n</li>\n<li><p><code>amount</code>: The amount of the sale.</p>\n</li>\n<li><p><code>serviceNumber</code>: The number or reference associated to the sale, it depends on the product. .e.g.For SOAT insurance it will be the plate. For packages it will be the phone number.</p>\n</li>\n<li><p><code>status</code>: The status of the sale.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>status</th>\n<th>definition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>0</td>\n<td>Failed</td>\n</tr>\n<tr>\n<td>1</td>\n<td>Successful</td>\n</tr>\n<tr>\n<td>9</td>\n<td>In progress</td>\n</tr>\n</tbody>\n</table>\n</div></li>\n<li><p><code>productId</code>: The product id associated to the sale.</p>\n</li>\n<li><p><code>createdAt</code>: The created at date.</p>\n</li>\n<li><p><code>transactionId</code>: For TransfiYa product, it is the provider transaction id.</p>\n</li>\n<li><p><code>extra</code>: Extra data of the sale, It depends on the product. e.g. For SOAT insurance it will be the PDF url of the insurance policy. For pins it will be the pin.</p>\n</li>\n</ul>\n","urlObject":{"path":["sells","sale","{saleId}"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"295ec855-9a07-4c60-a9b8-4871d5de8293","name":"success","originalRequest":{"method":"GET","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"url":"{{protocol}}://{{serverNameCommerceApi}}/sells/sale/123"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"message\": \"Operation successful.\",\r\n  \"messageCode\": \"00\",\r\n  \"data\": {\r\n    \"id\": 0,\r\n    \"amount\": 0,\r\n    \"serviceNumber\": \"string\",\r\n    \"status\": 0,\r\n    \"productId\": 0,\r\n    \"createdAt\": \"2024-10-31T15:51:41.899Z\",\r\n    \"transactionId\": \"string\",\r\n    \"extra\": \"string\"\r\n  }\r\n}"}],"_postman_id":"7586e57b-bbce-42aa-8458-6d5e744ad206"}],"id":"67d2bf6e-2e21-4fa7-8893-fe6e4c190d84","description":"<p>Here you will find all the endpoints related to multi-product sales.</p>\n<p><strong>Note:</strong> If you need information about parameterized commissions, you should consult your sales agent.</p>\n<hr />\n<h3 id=\"sell--error-codes\">Sell — Error Codes</h3>\n<p>The following error codes apply to all sell operations regardless of product type.</p>\n<hr />\n<h4 id=\"post-sellssell\">POST /sells/sell</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td><code>validators.productId.required</code></td>\n<td><code>El campo productId es obligatorio.</code></td>\n<td><code>productId</code> is absent</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.productId.number</code></td>\n<td><code>El campo productId debe ser de tipo Numerico</code></td>\n<td><code>productId</code> is not a number</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>data must be an object</code></td>\n<td><code>data</code> is absent or not an object</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.moveTmpBalance.isBoolean</code></td>\n<td><code>El campo moveTmpBalance debe ser de tipo boolean.</code></td>\n<td><code>moveTmpBalance</code> is present but not a boolean</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.sellType.isString</code> / <code>validators.sellType.isNotEmpty</code></td>\n<td><code>El campo sellType debe ser de tipo string</code> / <code>El campo sellType no puede estar vacío.</code></td>\n<td><code>sellType</code> is present but invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.hash.isString</code> / <code>validators.hash.isNotEmpty</code></td>\n<td><code>El campo hash debe ser de tipo string</code> / <code>El campo hash no puede estar vacío.</code></td>\n<td><code>hash</code> is present but invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.webhookUrl.isString</code> / <code>validators.webhookUrl.isNotEmpty</code></td>\n<td><code>El campo webhookUrl debe ser de tipo string</code> / <code>El campo webhookUrl no puede estar vacío.</code></td>\n<td><code>webhookUrl</code> is present but invalid</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.terminalId.isNumber</code></td>\n<td><code>El ID de terminal debe ser un valor numérico.</code></td>\n<td><code>terminalId</code> is present but not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators.commerceId.isNumber</code></td>\n<td><code>El ID de comercio debe ser un valor numérico.</code></td>\n<td><code>commerceId</code> is present but not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>validators._password.isString</code></td>\n<td><code>El campo _password debe ser de tipo string</code></td>\n<td><code>_password</code> is present but not a string</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>expiresIn must be a number</code></td>\n<td><code>expiresIn</code> is present but not a number</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>product.not.found</code> / <code>products.errors.notFound</code></td>\n<td><code>Producto no encontrado</code></td>\n<td>Product does not exist</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.disabled</code></td>\n<td><code>Producto deshabilitado</code></td>\n<td>Product is disabled</td>\n</tr>\n<tr>\n<td>404</td>\n<td><code>products.errors.providers.notFound</code></td>\n<td><code>El producto no tiene un proveedor.</code></td>\n<td>No provider associated with the product</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.userBalance</code></td>\n<td><code>El usuario no cuenta con saldo para la transacción</code></td>\n<td>Insufficient balance</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.transactionDuplicate</code></td>\n<td><code>Transacción duplicada</code></td>\n<td>Duplicate transaction detected — do not retry</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>server.error.core</code></td>\n<td><code>Solicitud duplicada. Por favor, inténtelo de nuevo.</code></td>\n<td>Request already in progress — retry after a few seconds</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>products.errors.blacklisted</code></td>\n<td><code>Al parecer estás siendo victima de hurto, hemos bloqueado tu cuenta por seguridad</code></td>\n<td>Reference number is on a security blacklist — do not retry</td>\n</tr>\n<tr>\n<td>400</td>\n<td><code>AMOUNT_OUT_OF_RANGE</code></td>\n<td><code>El monto debe ser mayor o igual a {min}</code> / <code>menor o igual a {max}</code></td>\n<td>Amount is outside the allowed range for the product</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h4 id=\"get-sellssalesaleid\">GET /sells/sale/:saleId</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>404</td>\n<td><code>server.notFound</code></td>\n<td><code>Nada encontrado</code></td>\n<td>Sale not found or does not belong to the authenticated user</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n</tbody>\n</table>\n</div>","_postman_id":"67d2bf6e-2e21-4fa7-8893-fe6e4c190d84"},{"name":"collections","item":[{"name":"submit-transaction","event":[{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"d4659777-acc3-40db-a9c3-40958e039f37","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction","description":"<hr />\n<h3 id=\"description\">Description</h3>\n<p>This endpoint is in charge of reporting the collections</p>\n<h3 id=\"request-body\">Request Body</h3>\n<ul>\n<li><p>id_cliente (number, required): Unique identifier for the user</p>\n</li>\n<li><p>id_transaccion (number, required): Identifier for the transaction</p>\n</li>\n<li><p>convenio (number, required): Code representing the specific agreement associated with the transaction</p>\n</li>\n<li><p>Valor (number, required): Amount of the transaction</p>\n</li>\n<li><p>Fecha (string, required): Date of the transaction</p>\n</li>\n<li><p>Hora (string, required): Time of the transaction</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><code>code</code>: Respond correctly in case of success</li>\n</ul>\n<hr />\n<h3 id=\"error-codes\">Error Codes</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP</th>\n<th><code>errorCode</code></th>\n<th>Message</th>\n<th>Condition</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>{field} must be a number</code></td>\n<td>A required numeric field (<code>id_cliente</code>, <code>id_transaccion</code>, <code>convenio</code>, <code>Valor</code>) is absent or not numeric</td>\n</tr>\n<tr>\n<td>400</td>\n<td>—</td>\n<td><code>{field} must be a string</code></td>\n<td>A required string field (<code>Fecha</code>, <code>Hora</code>) is absent or not a string</td>\n</tr>\n<tr>\n<td>401</td>\n<td><code>error.auth.failed</code></td>\n<td><code>Error en la autenticación</code></td>\n<td>Invalid or expired authentication token. Re-authenticate and retry the request.</td>\n</tr>\n<tr>\n<td>500</td>\n<td><code>server.error</code></td>\n<td><code>Mensaje del error interno</code> or <code>Critical internal server error occurred!</code></td>\n<td>Internal failure when registering the transaction — retry; if it persists, notify support</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["collection","submit-transaction"],"host":["{{serverNameCommerceApi}}"],"query":[],"variable":[]}},"response":[{"id":"e7dbaf9b-eb97-4afb-98a6-43f4023e76ba","name":"200 - SUCCESS","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"0\""},{"id":"47f1a370-aa5f-43ab-acba-273a625b9acd","name":"400-CLIENT_NOT_FOUND","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"('101', '', 'Cliente no encontrada')\""},{"id":"8e181a8f-9f0e-4149-9eb4-f61aa17d906a","name":"400-INVALID_VALUE","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"('103', '', 'Valor incorrecto')\""},{"id":"cae63792-500f-45ee-b003-eb584394a6a3","name":"400-MALFORMED_FIELDS","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"('201', '', 'Campos malformados')\""},{"id":"2b85e2cf-ec13-42cf-b99a-cfe2e0ba0e56","name":"400-COMPANY_NOT_FOUND","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"('203', '', 'Empresa no encontrada')\""},{"id":"853297c1-94be-4cc8-8ddc-c4fa184a5515","name":"400-UNKNOWN_ERROR","originalRequest":{"method":"POST","header":[{"key":"x-origin-commerce","value":"pay","disabled":true},{"key":"Authorization","value":"Bearer {{JWT}}"},{"key":"x-secret-id","value":"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de***","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"id_cliente\": 900,\r\n    \"id_transaccion\": 900,\r\n    \"convenio\": 2,\r\n    \"Valor\": 10000,\r\n    \"Fecha\": \"2024-10-**\",\r\n    \"Hora\": \"09:**\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNameCommerceApi}}/collection/submit-transaction"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 05 Sep 2024 16:50:10 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"277"},{"key":"Connection","value":"keep-alive"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Content-Security-Policy","value":"default-src 'self';script-src 'self';style-src 'self';img-src 'self';base-uri 'self';font-src 'self' https: data:;form-action 'self';frame-ancestors 'self';object-src 'none';script-src-attr 'none';upgrade-insecure-requests"},{"key":"Cross-Origin-Opener-Policy","value":"same-origin"},{"key":"Cross-Origin-Resource-Policy","value":"same-origin"},{"key":"Origin-Agent-Cluster","value":"?1"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"Strict-Transport-Security","value":"max-age=15552000; includeSubDomains"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-DNS-Prefetch-Control","value":"off"},{"key":"X-Download-Options","value":"noopen"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"X-Permitted-Cross-Domain-Policies","value":"none"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Server","value":"Refacil.com"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"ETag","value":"W/\"115-A3B0gjvaYrFlKmhLwVVQEetlehk\""}],"cookie":[],"responseTime":null,"body":"\"('901', '', 'Error desconocido')\""}],"_postman_id":"d4659777-acc3-40db-a9c3-40958e039f37"}],"id":"ce5fc2c7-c224-4fea-af2f-3ce9caff018b","_postman_id":"ce5fc2c7-c224-4fea-af2f-3ce9caff018b","description":""}],"id":"a22235bc-bce5-46fa-add7-242af868dae2","description":"<h4 id=\"balance-consumption-under-a-single-generic-merchant\"><strong>Balance consumption under a single generic merchant</strong></h4>\n<p>Inquiries and sales are managed from a single generic merchant. The merchant has an Administration Portal to view reports and make balance purchases through the channels enabled by Super Pagos.</p>\n<p>To make sales, the merchant must have available balance in the Super Pagos portal.</p>\n<blockquote>\n<p>You will be able to target the consumption of our services through our following Endpoint :<br />QA: <a href=\"https://commerce-api.qa.refacil.co/\">https://commerce-api.qa.refacil.co/</a><br />Production: <a href=\"https://commerce-api.refacil.co/\">https://commerce-api.refacil.co/</a>  </p>\n</blockquote>\n<blockquote>\n<p>Note: It should be noted that for each environment only the beginning of the Url is modified, the subsequent address is the same for both environments in the services that you will consume.  </p>\n</blockquote>\n<blockquote>\n<p>API implementation credentials in test environment will be available throughout the integration and up to 30 days after certification in production.</p>\n</blockquote>\n","_postman_id":"a22235bc-bce5-46fa-add7-242af868dae2"},{"name":"Pay API 2.0","item":[{"name":"Authorization","item":[{"name":"Login","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('tokenLogin', json.data.token)"],"type":"text/javascript","packages":{}}}],"id":"4114f081-fa91-49ea-81f7-06b648a6e8f8","protocolProfileBehavior":{"disabledSystemHeaders":{"content-type":true}},"request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"username\": \"{{username}}\",\n  \"password\": \"{{secretKey}}\"\n}\n"},"url":"{{protocol}}://{{serverNamePayApi}}/auth/login","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>username</strong> *</td>\n<td>string</td>\n<td>User</td>\n</tr>\n<tr>\n<td><strong>password</strong> *</td>\n<td>string</td>\n<td>Password</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["auth","login"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"6750aadd-579a-4ef4-b535-1201d5a57c61","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"username\": \"{{username}}\",\n  \"password\": \"{{secretKey}}\"\n}\n"},"url":"{{protocol}}://{{serverNamePayApi}}/auth/login"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"192"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 16:08:11 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"c0-vMI66azG94sKX8pghwtFoV95Xxs\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 7fca1c00381ef50504deb286fd5fc26c.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"ORD53-C2"},{"key":"X-Amz-Cf-Id","value":"jufuYVrGnra1x7SwxZnq4K_QGKIA9sXt2AKP4SbCDXFOc-CCgkuHRg=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"tokenType\": \"Bearer\",\n        \"token\": \"MTczMDQ3NzI5MTI0MiQyYiQxMCRqVFJhTmJMU2xCeURGNEh6R2NnWkl1MnF2cGlLQndZMzFPa1RCV21DYW9tRERrcWNFRFl2Z***\"\n    }\n}"},{"id":"b0477a5c-db16-4914-95ed-f4ebcd4ce01b","name":"401: Invalid Credentials","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n  \"username\": \"{{username}}\",\n  \"password\": \"{{secretKey}}\"\n}\n"},"url":"{{protocol}}://{{serverNamePayApi}}/auth/login"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"123"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 15:53:13 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"7b-xbCVQnRozx58FA7fWZAOpg/hNqo\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 deea5d6ab704f91d89c52977d572f58e.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"eZxTFjJrYqLC4xMXu9zMgGl9QBf3zcDVPcAVSLAgpiZ6UqYQV6WwLQ=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Credenciales inválidas\",\n    \"path\": \"/auth/login\",\n    \"date\": 1730476393394\n}"}],"_postman_id":"4114f081-fa91-49ea-81f7-06b648a6e8f8"}],"id":"160c2d6b-a47d-4bc6-9634-51ebbe0a85ea","description":"<p>To make the request and obtain the login you must have very clear your username and password for each environment where you are going to perform the integration, this information should be requested to our support team (<a href=\"https://mailto:soportetecnico@refacil.co\">soportetecnico@refacil.com</a>).</p>\n<p>Within the post you will see below are the fields to make your request</p>\n<blockquote>\n<p>Note that for the consumption of any of the API services it is necessary to send the authentication token that you get when consuming the <strong>auth/login</strong> service as an Authorization indicating the Type and Token.\nThe authentication token has an expiration time of 2 hours. Only consume this service after this time has elapsed or when the services that use the token return a 401 Unauthorized response.</p>\n</blockquote>\n","_postman_id":"160c2d6b-a47d-4bc6-9634-51ebbe0a85ea"},{"name":"Transactional token","item":[{"name":"Transactional token link","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('transactionalToken', json.data.token);"],"type":"text/javascript","packages":{}}}],"id":"22be304e-76ab-47a7-bac2-055cb3c5fcd9","request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/trx-token/generate","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>service</strong> *</td>\n<td>string</td>\n<td>Value of the service to be consumed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["trx-token","generate"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"3e34aa8d-93d6-4e08-9ea9-9f5d8eaf81c2","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"token\": \"4f2f1a68-988e-11ef-95a6-55d0f4788***\"\n    }\n}"},{"id":"2162d5ea-27a7-461d-9178-ab6603c627bb","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"2f06db2c-dfd7-4a2c-a4f7-7d558d3a460a","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"22be304e-76ab-47a7-bac2-055cb3c5fcd9"},{"name":"Transactional token method","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('transactionalToken', json.data.token);"],"type":"text/javascript","packages":{}}}],"id":"33b1a194-480a-4f90-a765-7a19b4ffc005","request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/cash-in/payment-method/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/trx-token/generate","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>service</strong> *</td>\n<td>string</td>\n<td>Value of the service to be consumed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["trx-token","generate"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"2454b611-d41a-4e65-9f43-7f3ffa25cfef","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"token\": \"4f2f1a68-988e-11ef-95a6-55d0f4788***\"\n    }\n}"},{"id":"508f8a28-d563-4e62-acb1-05e915c1448d","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"c1109f7f-5699-425f-bbf4-8abf0bb79a40","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"33b1a194-480a-4f90-a765-7a19b4ffc005"},{"name":"Transactional token withdraw","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('transactionalToken', json.data.token);"],"type":"text/javascript","packages":{}}}],"id":"40ebd945-7ea3-4d6f-9659-f3cf48fa217f","request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/cash-out/generate/withdraw-method/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/trx-token/generate","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>service</strong> *</td>\n<td>string</td>\n<td>Value of the service to be consumed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["trx-token","generate"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"8c812909-a3bf-4782-88d2-83effc3e6311","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"token\": \"4f2f1a68-988e-11ef-95a6-55d0f4788***\"\n    }\n}"},{"id":"a18684f0-267d-4275-95ae-4262d1137821","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"d2acf766-11c4-4b06-9ca4-b30143d2f9fe","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"service\": \"/cash-in/generate/payment-link/token\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"40ebd945-7ea3-4d6f-9659-f3cf48fa217f"},{"name":"Transactional token merchan key create","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('transactionalToken', json.data.token);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"8b18185b-ebf5-44b1-8639-a4f8116597aa","request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/create\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/trx-token/generate","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>service</strong> *</td>\n<td>string</td>\n<td>Value of the service to be consumed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["trx-token","generate"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"9488c77e-6e28-4365-bd33-0802ec7661c5","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/create\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"token\": \"4f2f1a68-988e-11ef-95a6-55d0f4788***\"\n    }\n}"},{"id":"938c1605-838d-4d0c-8ada-d909af36ae28","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/create\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"4f13b44d-225c-4b54-965b-f4f3559e6bc6","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/create\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"8b18185b-ebf5-44b1-8639-a4f8116597aa"},{"name":"Transactional token merchant key cancel","event":[{"listen":"test","script":{"exec":["const json = JSON.parse(responseBody)\r","pm.environment.set('transactionalToken', json.data.token);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"d604a96e-f376-40d6-bcd0-0166e54037af","request":{"auth":{"type":"noauth","isInherited":false},"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/cancel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/trx-token/generate","description":"<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>service</strong> *</td>\n<td>string</td>\n<td>Value of the service to be consumed</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["trx-token","generate"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"63acfe9d-2122-41c5-a283-653deaa262b4","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/cancel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"token\": \"4f2f1a68-988e-11ef-95a6-55d0f4788***\"\n    }\n}"},{"id":"f1ceb9ac-450c-45b0-af4e-7205c7120e25","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/cancel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"bfb2bf99-ec69-4ec5-9505-740472ec092f","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/merchant-key/cancel\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"d604a96e-f376-40d6-bcd0-0166e54037af"}],"id":"8b438521-c85b-4302-89fc-e4c4a2206781","description":"<p>This service allows security validation for the execution of a transaction on the platform, generating a single-use token.</p>\n<blockquote>\n<p>The transactional token service is obtained in three ways, depending on the action to be performed. For this, the value sent in the <em><strong>service</strong></em> parameter must be set according to what is required:<br />1. For Payment Link: <strong>“/cash-in/generate/payment-link/token”</strong>.<br />2. For Payment method: <strong>“/cash-in/generate/payment-method/token”</strong>.<br />3. For Withdraw: <strong>“/cash-out/generate/withdraw-method/token”</strong>.<br />4. For Merchant Key: [ “/merchant-key/create”, “/merchant-key/cancel” ] </p>\n</blockquote>\n<blockquote>\n<p>The generated token is single-use for each transaction and cannot be consumed more than once. In addition, the transactional token will be valid for 60 seconds.</p>\n</blockquote>\n","_postman_id":"8b438521-c85b-4302-89fc-e4c4a2206781"},{"name":"Payments","item":[{"name":"Payment Link","item":[{"name":"Generate payment link","id":"4e813188-5b4b-42cc-9423-24deadb641d8","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"expiresIn\": 12360,\n    \"amount\": 2000,\n    \"brandId\": 117,\n    \"webhookUrl\": \"https://webhook.site/8965aa0a-e3e7-4092-aa7d-6c44bf63f7a8\",\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"returnUrl\": \"https://www.google.com\",\n    \"reference1\": \"550e8400-e29b-41d4-a716-446655440000\",\n    \"reference2\": {\n        \"Label\": {\n            \"Name\": \"Juanita Perez\",\n            \"Email\": \"pqacLO87V77DgF62P8PXENA==do\",\n            \"CellPhone\": \"1VM6daPPJcXCD4Cw93272oQ==8\",\n            \"Type Person\": \"NATURAL\",\n            \"Type Document\": \"CEDULA\",\n            \"DocumentNumber\": 79706920,\n            \"Nodo\": 47474\n        },\n        \"Data\": {\n            \"Typedoc\": \"cedula\",\n            \"docnum\": \"1088307172\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/cash-in/generate/payment-link/token","description":"<h2 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Value of the payment.</td>\n</tr>\n<tr>\n<td><code>brandId</code></td>\n<td>number</td>\n<td>❌</td>\n<td>ID of the customer's white label; if one is not available, the default ID 79 is sent.</td>\n</tr>\n<tr>\n<td><code>expiresIn</code></td>\n<td>number</td>\n<td>❌</td>\n<td>Time in minutes for the expiration of the resource or payment link.</td>\n</tr>\n<tr>\n<td><code>reference1</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Customer identifier, must be between 1 and 36 characters.</td>\n</tr>\n<tr>\n<td><code>reference2</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for additional information.</td>\n</tr>\n<tr>\n<td><code>reference2.Commerce</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for information related to the store or commerce.</td>\n</tr>\n<tr>\n<td><code>reference2.Data</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for information related to the conciliation of the transaction.</td>\n</tr>\n<tr>\n<td><code>reference2.Label</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object to send information to be displayed in the payment summary.</td>\n</tr>\n<tr>\n<td><code>returnUrl</code></td>\n<td>string</td>\n<td>❌</td>\n<td>Link that the customer will see when clicking on the back to commerce button.</td>\n</tr>\n<tr>\n<td><code>showSummary</code></td>\n<td>boolean</td>\n<td>❌</td>\n<td>Indicates whether the RefácilPay payment summary will be shown or not (false: do not show, true: show). Default: true.</td>\n</tr>\n<tr>\n<td><code>userMetadata</code></td>\n<td>object</td>\n<td>✅</td>\n<td>Object containing key details about the user or merchant generating the payment resource.</td>\n</tr>\n<tr>\n<td><code>userMetadata.identifier</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Unique identifier of the user or merchant generating the payment resource (max 36 characters).</td>\n</tr>\n<tr>\n<td><code>userMetadata.ip</code></td>\n<td>string</td>\n<td>✅</td>\n<td>IP address associated with the user's identifier. Must be a valid IP address.</td>\n</tr>\n<tr>\n<td><code>userMetadata.urlCommerce</code></td>\n<td>string</td>\n<td>✅</td>\n<td>URL that identifies the commerce. Must follow valid URL structure with http:// or https:// protocol. Maximum length: 500 characters.</td>\n</tr>\n<tr>\n<td><code>webhookUrl</code></td>\n<td>string</td>\n<td>✅</td>\n<td>URL of the client's webhook to receive real-time payment status updates.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["cash-in","generate","payment-link","token"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"304f1e95-ea2b-41a1-8aa5-79c370f799db","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"expiresIn\": 12360,\r\n    \"amount\": 2000,\r\n    \"brandId\": 117,\r\n    \"webhookUrl\": \"https://webhook.site/8965aa0a-e3e7-4092-aa7d-6c44bf63f7a8\",\r\n    \"userMetadata\": {\r\n        \"ip\": \"1.2.3.2\",\r\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\r\n        \"urlCommerce\": \"https://url-tucomercio.com\"\r\n    },\r\n    \"returnUrl\": \"https://www.google.com\",\r\n    \"reference1\": \"Ref01350\",\r\n    \"reference2\": {\r\n        \"Label\": {\r\n            \"Name\": \"Juanita Perez\",\r\n            \"Email\": \"pqacLO87V77DgF62P8PXENA==do\",\r\n            \"CellPhone\": \"1VM6daPPJcXCD4Cw93272oQ==8\",\r\n            \"Type Person\": \"NATURAL\",\r\n            \"Type Document\": \"CEDULA\",\r\n            \"DocumentNumber\": 79706920,\r\n            \"Nodo\": 47474\r\n        },\r\n        \"Data\": {\r\n            \"Typedoc\": \"cedula\",\r\n            \"docnum\": \"1088307172\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://app.qa.refacil.co/refacilpay/payLink/61/0e9324d0-77df-11ed-a59f-a70d92dacf57\",\n        \"reference\": \"0e9324d0-77df-11ed-a59f-a70d92dac***\"\n    }\n}"},{"id":"f837513f-0d0f-4045-8782-0784eae9773a","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n    \"expiresIn\": 12360,\r\n    \"amount\": 2000,\r\n    \"brandId\": 117,\r\n    \"webhookUrl\": \"https://webhook.site/8965aa0a-e3e7-4092-aa7d-6c44bf63f7a8\",\r\n    \"userMetadata\": {\r\n        \"ip\": \"1.2.3.2\",\r\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\r\n        \"urlCommerce\": \"https://url-tucomercio.com\"\r\n    },\r\n    \"returnUrl\": \"https://www.google.com\",\r\n    \"reference1\": \"Ref01350\",\r\n    \"reference2\": {\r\n        \"Label\": {\r\n            \"Name\": \"Juanita Perez\",\r\n            \"Email\": \"pqacLO87V77DgF62P8PXENA==do\",\r\n            \"CellPhone\": \"1VM6daPPJcXCD4Cw93272oQ==8\",\r\n            \"Type Person\": \"NATURAL\",\r\n            \"Type Document\": \"CEDULA\",\r\n            \"DocumentNumber\": 79706920,\r\n            \"Nodo\": 47474\r\n        },\r\n        \"Data\": {\r\n            \"Typedoc\": \"cedula\",\r\n            \"docnum\": \"1088307172\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"6de9b938-7f81-40ca-bab9-bdc112fbc510","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"expiresIn\": 12360,\r\n    \"amount\": 2000,\r\n    \"brandId\": 117,\r\n    \"webhookUrl\": \"https://webhook.site/8965aa0a-e3e7-4092-aa7d-6c44bf63f7a8\",\r\n    \"userMetadata\": {\r\n        \"ip\": \"1.2.3.2\",\r\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\r\n        \"urlCommerce\": \"https://url-tucomercio.com\"\r\n    },\r\n    \"returnUrl\": \"https://www.google.com\",\r\n    \"reference1\": \"Ref01350\",\r\n    \"reference2\": {\r\n        \"Label\": {\r\n            \"Name\": \"Juanita Perez\",\r\n            \"Email\": \"pqacLO87V77DgF62P8PXENA==do\",\r\n            \"CellPhone\": \"1VM6daPPJcXCD4Cw93272oQ==8\",\r\n            \"Type Person\": \"NATURAL\",\r\n            \"Type Document\": \"CEDULA\",\r\n            \"DocumentNumber\": 79706920,\r\n            \"Nodo\": 47474\r\n        },\r\n        \"Data\": {\r\n            \"Typedoc\": \"cedula\",\r\n            \"docnum\": \"1088307172\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"4e813188-5b4b-42cc-9423-24deadb641d8"}],"id":"3f520438-2d23-4366-bb10-06cbb1cca966","description":"<p>With the following request you can obtain a payment resource with a link that will redirect your customer to the payment gateway where he will see a list of the different payment methods available.</p>\n","_postman_id":"3f520438-2d23-4366-bb10-06cbb1cca966"},{"name":"Payment Method","item":[{"name":"Generate payment method","id":"d024ef84-afb9-4a51-b495-47cb09f1bc32","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"expiresIn\": 2592000,\n    \"paymentMethod\": {\n        \"id\": 277,\n        \"cellphone\": \"3017765147\",\n        \"pdfUrl\": \"https://testing-pay.s3.us-east-2.amazonaws.com/pdf/cashfactory/500.pdf\" // Optional\n    },\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"amount\": 10000,\n    \"brandId\": 1,\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\",\n    \"returnUrl\": \"https://www.google.com/?hl=es\",\n    \"showSummary\": true,\n    \"reference1\": \"EGfbOsiYQspMpgDD\",\n    \"reference2\": {\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token","description":"<p>This endpoint allows you to <strong>generate payment requests</strong> through the available <em>cash-in</em> methods.</p>\n<hr />\n<h3 id=\"💡-overview\">💡 Overview</h3>\n<p>The table below lists the available payment methods along with their corresponding IDs and <strong>minimum expiration times</strong> (<code>expiresIn</code>) required when creating a payment request.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Method ID</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Minimum Expiration (seconds)</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>130</code></td>\n<td>Cash-in via <strong>Nequi</strong></td>\n<td>43,200</td>\n</tr>\n<tr>\n<td><code>131</code></td>\n<td>Cash-in via <strong>Daviplata</strong></td>\n<td>43,200</td>\n</tr>\n<tr>\n<td><code>133</code></td>\n<td>Cash-in via <strong>PSE</strong></td>\n<td>1,800</td>\n</tr>\n<tr>\n<td><code>262</code></td>\n<td>Cash-in via <strong>PSE Gateway</strong></td>\n<td>1,800</td>\n</tr>\n<tr>\n<td><code>153</code></td>\n<td>Cash-in via <strong>Recaudo Efectivo</strong></td>\n<td>86,400</td>\n</tr>\n<tr>\n<td><code>163</code></td>\n<td>Cash-in via <strong>TPaga</strong></td>\n<td>43,200</td>\n</tr>\n<tr>\n<td><code>248</code></td>\n<td>Cash-in via <strong>QR Interoperable</strong></td>\n<td>N/A</td>\n</tr>\n<tr>\n<td><code>250</code></td>\n<td>Cash-in via <strong>Llaves Bre-B</strong></td>\n<td>N/A</td>\n</tr>\n<tr>\n<td><code>273</code></td>\n<td>Cash-in via <strong>Tarjetas</strong> (Débito y Crédito)</td>\n<td>3,600</td>\n</tr>\n<tr>\n<td><code>277</code></td>\n<td>Cash-in via <strong>Whatsapp</strong></td>\n<td>2,592,000</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>⚠ <strong>Important:</strong><br />The value provided in the expiresIn field <strong>must be greater than or equal</strong> to the minimum expiration defined for the selected payment method.<br />For <strong>QR Interoperable (ID 248)</strong>, the <code>expiresIn</code> parameter <strong>must be omitted</strong>. If provided, the system will <strong>ignore it automatically</strong>. The resource expiration is managed internally by the provider and is set to the <strong>end of the same day the resource is generated</strong>.<br />For <strong>Llaves Dinámicas Bre-B (ID 250)</strong>, the <code>expiresIn</code> parameter <strong>must be omitted</strong>. If provided, the system will <strong>ignore it automatically</strong>. The key has a <strong>fixed validity period of 10 minutes</strong> from the moment of creation, determined by the server configuration. </p>\n</blockquote>\n<hr />\n<h2 id=\"🧩-payment-method-details\">🧩 Payment Method Details</h2>\n<p>Each payment method requires a specific object structure within the <code>\"paymentMethod\"</code> field.</p>\n<hr />\n<h3 id=\"nequi\"><strong>Nequi</strong></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 130,\n  \"cellphone\": \"3105293225\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"daviplata\"><strong>Daviplata</strong></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 131,\n  \"cellphone\": \"3208385715\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"pse\"><strong>PSE</strong></h3>\n<p>For this payment method, depending on the <code>typePerson</code> selected, only specific document types are accepted:</p>\n<ul>\n<li><p><strong><code>typePerson</code>****:</strong> <strong><code>\"0\"</code></strong> → corresponds to a <strong>Natural Person</strong> and only accepts the following values for <code>documentType</code>:</p>\n<ul>\n<li><p><code>RCN</code></p>\n</li>\n<li><p><code>TI</code></p>\n</li>\n<li><p><code>CC</code></p>\n</li>\n<li><p><code>TE</code></p>\n</li>\n<li><p><code>CE</code></p>\n</li>\n<li><p><code>PA</code></p>\n</li>\n<li><p><code>DIE</code></p>\n</li>\n</ul>\n</li>\n<li><p><strong><code>typePerson</code>****:</strong> <strong><code>\"1\"</code></strong> → corresponds to a <strong>Legal Person</strong> and only accepts the following value for <code>documentType</code>:</p>\n<ul>\n<li><code>NIT</code></li>\n</ul>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 133,\n  \"documentType\": \"CC\",\n  \"typePerson\": \"0\",\n  \"bankId\": \"string\",\n  \"documentNumber\": \"string\",\n  \"name\": \"string\",\n  \"cellphone\": \"string\",\n  \"address\": \"string\",\n  \"email\": \"string\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"pse-gateway\"><strong>PSE Gateway</strong></h3>\n<p>This payment method enables direct integration with the PSE network for processing online bank payments.<br />To consume this product, it is required to have the following parameters previously configured and associated with your product:</p>\n<ul>\n<li><p><code>entity_code</code></p>\n</li>\n<li><p><code>service_code</code></p>\n</li>\n<li><p><code>company_ciiu</code></p>\n</li>\n<li><p><code>company_name</code></p>\n</li>\n</ul>\n<p>These parameters identify your company within the PSE network and are necessary for successful transaction routing and validation.</p>\n<blockquote>\n<p>💬 <strong>For more information or to request these credentials, please contact the support team.</strong> </p>\n</blockquote>\n<p>This method follows <strong>the same structure and validation rules</strong> as <strong>PSE</strong>, but must use the following identifier:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 262,\n  \"documentType\": \"CC\",\n  \"typePerson\": \"0\",\n  \"bankId\": \"string\",\n  \"documentNumber\": \"string\",\n  \"name\": \"string\",\n  \"cellphone\": \"string\",\n  \"address\": \"string\",\n  \"email\": \"string\"\n}\n\n</code></pre>\n<p>The <strong>PSE integration</strong> relies heavily on the correct configuration of the <code>showSummary</code> and <code>returnUrl</code> parameters.<br />These parameters control the <strong>user experience</strong> and the <strong>finalization flow</strong> of the payment process.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Scenario</th>\n<th><code>showSummary</code></th>\n<th><code>returnUrl</code></th>\n<th>Flow Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>1. Standard Redirect (Default)</strong></td>\n<td><code>true</code> or not sent</td>\n<td>✅ Present</td>\n<td>Displays a transaction summary screen with key payment details and retrieves the final transaction status. After the payment is completed, the user is redirected to the specified <code>returnUrl</code>.</td>\n</tr>\n<tr>\n<td><strong>2. Without Transaction Summary Screen</strong></td>\n<td><code>false</code></td>\n<td>✅ Present</td>\n<td>Skips the transaction summary screen and redirects the user directly to the <code>returnUrl</code>. In this case, the merchant’s system must display the transaction summary on the destination page.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>⚠️ <strong>Note:</strong><br />For <strong>PSE</strong> and <strong>PSE Gateway</strong>, it is <strong>strongly recommended</strong> to use <code>showSummary: true</code> along with a valid <code>returnUrl</code> to ensure a seamless customer experience and accurate transaction tracking. </p>\n</blockquote>\n<blockquote>\n<p>🔗 <strong>See also:</strong> </p>\n</blockquote>\n<ul>\n<li><p><a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#45e0d76a-fabd-442e-9b17-e2f6b8354ec5\">Transaction Summary</a></p>\n</li>\n<li><p><a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#dd3ba9f5-1f10-4109-b59d-6e5aad5e3799\">Transaction Status</a></p>\n</li>\n</ul>\n<hr />\n<h3 id=\"recaudo-efectivo\"><strong>Recaudo Efectivo</strong></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 153\n}\n\n</code></pre>\n<hr />\n<h3 id=\"tpaga\"><strong>TPaga</strong></h3>\n<p>This payment method supports an optional parameter called <code>isQr</code>, which determines the type of resource returned in the <code>url</code> field:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Value</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>true</code></td>\n<td>The <code>url</code> field returns a link to a <strong>QR code</strong> displaying transaction details.</td>\n</tr>\n<tr>\n<td><code>false</code></td>\n<td>The <code>url</code> field returns a <strong>deeplink</strong> to open directly in the TPAGA wallet app.</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>🧠 <strong>Behavior:</strong><br />If <code>isQr</code> is not provided, the default behavior is equivalent to <code>isQr: false</code>.<br />Transactions can only be completed <strong>from a mobile device</strong>.<br />If the request is made from a desktop or tablet, it is recommended to send <code>isQr: true</code> so the user can scan the QR from a mobile device. </p>\n</blockquote>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 163,\n  \"isQr\": false\n}\n\n</code></pre>\n<hr />\n<h3 id=\"qr-interoperable\"><strong>QR Interoperable</strong></h3>\n<p>For this method, the following fields are <strong>optional</strong>:</p>\n<ul>\n<li><p><code>cellphone</code></p>\n</li>\n<li><p><code>documentNumber</code></p>\n</li>\n<li><p><code>documentType</code></p>\n</li>\n<li><p><code>merchantId</code></p>\n</li>\n</ul>\n<p>The service can function using only the payment method ID; however, providing these optional fields can <strong>improve response time</strong>.<br />You may retrieve this data through the <code>enrollment-data</code> service in the <a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#8c9f5a18-a19a-4b8f-baba-cd7501aa29a0\">Merchant Enrollment</a> section.</p>\n<blockquote>\n<p>⚠ <strong>Prerequisite:</strong><br />The merchant must complete the <strong>Merchant Enrollment</strong> process before using this method.<br />See the <em>Merchant Enrollment</em> section for setup details. </p>\n</blockquote>\n<blockquote>\n<p>🔁 <strong>Open Resource:</strong><br />The <strong>QR Interoperable</strong> operates as an <em>open resource</em>, meaning the generated QR can be used multiple times by the same user. </p>\n</blockquote>\n<blockquote>\n<p>⚙️ <strong>Technical Note — Dynamic QR Behavior:</strong><br />Dynamic QR codes may be scanned multiple times due to current limitations in the Redeban system.<br />This is <strong>not</strong> an error in our platform. </p>\n</blockquote>\n<blockquote>\n<p>🕐 <strong>Expiration Behavior:</strong><br />The <code>expiresIn</code> parameter <strong>does not apply</strong> to this payment method and should be <strong>omitted</strong> from the request.<br />If a value is sent, the system will <strong>ignore it automatically</strong>.<br />The QR resource expiration is controlled exclusively by the provider (Redeban) and is always set to the <strong>end of the day on which the resource is generated</strong> (23:59:59 America/Bogota). </p>\n</blockquote>\n<h4 id=\"behavior-details\">Behavior Details</h4>\n<ul>\n<li><p>Redeban does not automatically invalidate a dynamic QR after its first scan.</p>\n</li>\n<li><p>As a result, the same QR may generate multiple transaction records.</p>\n</li>\n</ul>\n<h4 id=\"recommendations\">Recommendations</h4>\n<ul>\n<li><p>Implement <strong>application-level validation</strong> to detect multiple payments from the same QR code.</p>\n</li>\n<li><p>Monitor dynamic QR transactions and confirm status before marking payments as completed.</p>\n</li>\n<li><p>Inform end-users to verify the success of a transaction before rescanning.</p>\n</li>\n</ul>\n<h4 id=\"future-considerations\">Future Considerations</h4>\n<ul>\n<li><p>Redeban is evaluating support for <strong>single-use dynamic QR control</strong>.</p>\n</li>\n<li><p>Stay updated with interoperability provider announcements to adjust integrations accordingly.</p>\n</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 248,\n  \"cellphone\": \"string\",\n  \"documentType\": \"string\",\n  \"documentNumber\": \"string\",\n  \"merchantId\": \"string\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"llaves-dinámicas-bre-b\"><strong>Llaves</strong> Dinámicas <strong>Bre-B</strong></h3>\n<p>For this method, the following fields are <strong>required</strong>:</p>\n<ul>\n<li><p><code>cellphone</code></p>\n</li>\n<li><p><code>docNumber</code></p>\n</li>\n<li><p><code>docType</code></p>\n</li>\n<li><p><code>merchantId</code></p>\n</li>\n</ul>\n<p>You may retrieve this data through the <code>enrollment-data</code> service in the <a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#8c9f5a18-a19a-4b8f-baba-cd7501aa29a0\">Merchant Enrollment</a> section.</p>\n<blockquote>\n<p>⚠ <strong>Prerequisite:</strong><br />The merchant must complete the <strong>Merchant Enrollment</strong> process before using this method.<br />See the <em>Merchant Enrollment</em> section for setup details. </p>\n</blockquote>\n<blockquote>\n<p>🔁 <strong>Open Resource:</strong><br />The <strong>Llaves Dinamicas Bre-B</strong> operates as an <em>open resource</em>, meaning the generated KEY can be used multiple times by the same user. </p>\n</blockquote>\n<blockquote>\n<p>⚙️ <strong>Technical Note — Dynamic Key Behavior:</strong><br />Dynamic keys may receive multiple money transfers due to current limitations in the Redeban system.<br />This behavior does not represent an error or malfunction in our platform.<br /><strong>Additionally, dynamic keys have a fixed validity period of 10 minutes, and this duration cannot be modified.</strong> </p>\n</blockquote>\n<h4 id=\"behavior-details-1\">Behavior Details</h4>\n<ul>\n<li><p>Redeban does not automatically invalidate a dynamic KEY after its first send.</p>\n</li>\n<li><p>As a result, the same KEY may generate multiple transaction records.</p>\n</li>\n</ul>\n<h4 id=\"recommendations-1\">Recommendations</h4>\n<ul>\n<li><p>Implement <strong>application-level validation</strong> to detect multiple payments from the same KEY.</p>\n</li>\n<li><p>Monitor dynamic KEY transactions and confirm status before marking payments as completed.</p>\n</li>\n<li><p>Inform end-users to verify the success of a transaction before rescanning.</p>\n</li>\n</ul>\n<h4 id=\"future-considerations-1\">Future Considerations</h4>\n<ul>\n<li>Stay updated with interoperability provider announcements to adjust integrations accordingly.</li>\n</ul>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 250,\n  \"cellphone\": \"string\",\n  \"docType\": \"string\",\n  \"docNumber\": \"string\",\n  \"merchantId\": \"string\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"card-payments\"><strong>Card Payments</strong></h3>\n<p>This payment method allows processing payments with debit and credit cards (Mastercard and Visa).</p>\n<p>For this method, the following fields are <strong>required</strong>:</p>\n<ul>\n<li><p><code>id</code>: 273</p>\n</li>\n<li><p><code>description</code>: Description of the payment detail that will be displayed in the payment link</p>\n</li>\n</ul>\n<h4 id=\"paymentmethod-parameters\">PaymentMethod Parameters</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Payment method ID: 273</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Description of the payment detail that will be displayed in the payment link. Maximum 255 characters.</td>\n</tr>\n</tbody>\n</table>\n</div><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 273,\n  \"description\": \"string\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"whatsapp\"><strong>Whatsapp</strong></h3>\n<p>For this method, the following fields are <strong>required</strong>:</p>\n<ul>\n<li><p><code>cellphone</code></p>\n</li>\n<li><p><code>whatsappAccountId</code></p>\n</li>\n</ul>\n<p>For this method, the following fields are <strong>optional</strong>:</p>\n<ul>\n<li><p><code>pdfUrl</code> (must use HTTPS; resource must be publicly accessible without authentication; referenced file must be a valid PDF and not exceed 100 MB)</p>\n</li>\n<li><p><code>templateName</code></p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Note:</strong> By default, collection messages are sent from Refacil's WhatsApp line.<br />To send them from your own line, you must first link your WhatsApp account in the administrative portal and obtain the corresponding <code>whatsappAccountId</code>.<br />Once linked, collection messages will be sent from the client's WhatsApp line.</p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Payment method ID: 277</td>\n</tr>\n<tr>\n<td><code>cellphone</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Customer phone number in local or international format.</td>\n</tr>\n<tr>\n<td><code>pdfUrl</code></td>\n<td>string</td>\n<td>❌</td>\n<td>Public HTTPS URL to the PDF document to be delivered via WhatsApp.</td>\n</tr>\n<tr>\n<td><code>whatsappAccountId</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Identifier of the linked WhatsApp account configured in the administrative portal.</td>\n</tr>\n<tr>\n<td><code>templateName</code></td>\n<td>string</td>\n<td>❌</td>\n<td>Optional template name configured for WhatsApp message delivery.</td>\n</tr>\n</tbody>\n</table>\n</div><pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"paymentMethod\": {\n  \"id\": 277, // required\n  \"cellphone\": \"string\", // required\n  \"pdfUrl\": \"string\", // optional\n  \"whatsappAccountId\": \"string\", // required\n  \"templateName\": \"string\" // optional\n}\n\n</code></pre>\n<h2>📥 Request Body Parameters</h2>\n\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Value of the payment.</td>\n</tr>\n<tr>\n<td><code>brandId</code></td>\n<td>number</td>\n<td>❌</td>\n<td>ID of the customer's white label; if one is not available, the default ID 79 is sent.</td>\n</tr>\n<tr>\n<td><code>expiresIn</code></td>\n<td>number</td>\n<td>❌</td>\n<td>Time in seconds for the expiration of the resource or payment link. Not applicable for <strong>QR Interoperable (ID 248)</strong> and <strong>Llaves Dinámicas Bre-B (ID 250)</strong> — if provided, the system ignores it. For QR Interoperable, expiration is set to end of day; for Llaves Dinámicas Bre-B, expiration is always 10 minutes from creation.</td>\n</tr>\n<tr>\n<td><code>paymentMethod</code></td>\n<td>object</td>\n<td>✅</td>\n<td>Object specifying the payment method and its details.</td>\n</tr>\n<tr>\n<td><code>paymentMethod.id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>ID of the selected payment method (see available payment methods).</td>\n</tr>\n<tr>\n<td><code>reference1</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Customer identifier, must be between 1 and 36 characters.</td>\n</tr>\n<tr>\n<td><code>reference2</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for additional information.</td>\n</tr>\n<tr>\n<td><code>reference2.Commerce</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for information related to the store or commerce.</td>\n</tr>\n<tr>\n<td><code>reference2.Data</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object for information related to the conciliation of the transaction.</td>\n</tr>\n<tr>\n<td><code>reference2.Label</code></td>\n<td>object</td>\n<td>❌</td>\n<td>Object to send information to be displayed in the payment summary.</td>\n</tr>\n<tr>\n<td><code>returnUrl</code></td>\n<td>string</td>\n<td>❌</td>\n<td>Link that the customer will see when clicking on the back to commerce button.</td>\n</tr>\n<tr>\n<td><code>showSummary</code></td>\n<td>boolean</td>\n<td>❌</td>\n<td>Indicates whether the RefácilPay payment summary will be shown or not (false: do not show, true: show). Default: true.</td>\n</tr>\n<tr>\n<td><code>userMetadata</code></td>\n<td>object</td>\n<td>✅</td>\n<td>Object containing key details about the user or merchant generating the payment resource.</td>\n</tr>\n<tr>\n<td><code>userMetadata.identifier</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Unique identifier of the user or merchant generating the payment resource (max 36 characters).</td>\n</tr>\n<tr>\n<td><code>userMetadata.ip</code></td>\n<td>string</td>\n<td>✅</td>\n<td>IP address associated with the user's identifier. Must be a valid IP address.</td>\n</tr>\n<tr>\n<td><code>userMetadata.urlCommerce</code></td>\n<td>string</td>\n<td>✅</td>\n<td>URL that identifies the commerce. Must follow valid URL structure with http:// or https:// protocol. Maximum length: 500 characters.</td>\n</tr>\n<tr>\n<td><code>webhookUrl</code></td>\n<td>string</td>\n<td>✅</td>\n<td>URL of the client's webhook to receive real-time payment status updates.</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["cash-in","generate","payment-method","token"],"host":["pay-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"c57fb3d9-d37b-47f6-814a-159fe127bd58","name":"200: Nequi","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 43200, // Opcional\n    \"paymentMethod\": {\n        \"id\": 130,\n        \"cellphone\": \"3105293225\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDD\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://mf-core.refacil.co/refacilpay/resumen/79/293723d0-124c-11f1-9104-91e017be6ba0\",\n        \"reference\": \"293723d0-124c-11f1-9104-91e017be6ba0\",\n        \"resourceId\": \"2762785\",\n        \"expiresIn\": \"2026-02-25T14:06:15.387Z\",\n        \"urlStatusPay\": null,\n        \"resourceUrlId\": \"1762399\",\n        \"status\": 1\n    }\n}"},{"id":"f917efe4-436b-4486-9e65-f2207650cd4a","name":"200: Daviplata","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 43200, // Opcional\n    \"paymentMethod\": {\n        \"id\": 131,\n        \"cellphone\": \"3208385715\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDE\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://mf-core.refacil.co/refacilpay/resumen/79/e5c9ccc0-124f-11f1-b5b0-0f08fde3054d\",\n        \"reference\": \"e5c9ccc0-124f-11f1-b5b0-0f08fde3054d\",\n        \"resourceId\": \"2762789\",\n        \"expiresIn\": \"2026-02-25T14:32:59.673Z\",\n        \"urlStatusPay\": null,\n        \"resourceUrlId\": \"1762401\",\n        \"status\": 1\n    }\n}"},{"id":"2f2fac87-08de-4259-bee6-eef3ece3b226","name":"200: PSE","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 1800, // Opcional\n    \"paymentMethod\": {\n        \"id\": 133,\n        \"documentType\": \"CC\",\n        \"typePerson\": \"0\",\n        \"bankId\": \"1022\",\n        \"documentNumber\": \"71234567\",\n        \"name\": \"Juan López\",\n        \"cellphone\": \"3001234567\",\n        \"address\": \"Cll 24 # 72 - 31\",\n        \"email\": \"juanlopez1@mail.com\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDF\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://registro.desarrollo.pse.com.co/PSENF/index.html?enc=YbyEQkQJeqbJ86oi630KB8fypOoS9ALPV%2fViODsyktI%3d\",\n        \"reference\": \"247aef30-1e1c-11f1-942d-2ddd1adc50fa\",\n        \"resourceId\": \"2762854\",\n        \"expiresIn\": \"2026-04-11T14:02:44.429Z\",\n        \"urlStatusPay\": null,\n        \"resourceUrlId\": \"1762458\",\n        \"status\": 1\n    }\n}"},{"id":"80c56983-ce11-4950-bff8-49fdd3583bdf","name":"200: PSE Gateway","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 1800, // Opcional\n    \"paymentMethod\": {\n        \"id\": 262,\n        \"documentType\": \"CC\",\n        \"typePerson\": \"0\",\n        \"bankId\": \"1022\",\n        \"documentNumber\": \"71234567\",\n        \"name\": \"Juan López\",\n        \"cellphone\": \"3001234567\",\n        \"address\": \"Cll 24 # 72 - 31\",\n        \"email\": \"juanlopez1@mail.com\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDH\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://registro.desarrollo.pse.com.co/PSENF/index.html?enc=Z2ipgo7U3ORu2nWf5QDra5QmlRLZ1flulisIomiMf%2bU%3d\",\n        \"reference\": \"03d0be20-1e1e-11f1-bd58-55ae657e32e8\",\n        \"resourceId\": \"2762856\",\n        \"expiresIn\": \"2026-04-11T14:16:08.629Z\",\n        \"urlStatusPay\": null,\n        \"resourceUrlId\": \"1762460\",\n        \"status\": 1\n    }\n}"},{"id":"fb527c86-becb-44dd-a7fb-3e8701702ebe","name":"200: Recaudo Efectivo","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 86400, // Opcional\n    \"paymentMethod\": {\n        \"id\": 153\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDI\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://pay.s3.us-east-2.amazonaws.com/pdf/reference/2762846.pdf\",\n        \"reference\": \"79b40cc0-1e17-11f1-bd58-55ae657e32e8\",\n        \"resourceId\": \"2762846\",\n        \"expiresIn\": \"2026-04-11T13:29:19.000Z\",\n        \"urlStatusPay\": \"https://mf-core.refacil.co/refacilpay/resumen/79/79b40cc0-1e17-11f1-bd58-55ae657e32e8\",\n        \"resourceUrlId\": \"1762451\",\n        \"status\": 1\n    }\n}"},{"id":"0e9ffb83-3165-4091-a3e1-7a697c95f5fa","name":"200: TPaga","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 43200, // Opcional\n    \"paymentMethod\": {\n        \"id\": 163,\n        \"isQr\": false\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDJ\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://w.tpaga.co/eyJtIjp7Im8iOiJQUiJ9LCJkIjp7InMiOiJyZWZhY2lpbCIsInBydCI6InByLTM4NTNhYWI1YzI5MDdmNGUwODU3ZWRkMjA0ZjM1ZjAwNTYyNGUyZjFlMjk5MjE4NTRjMzgzMzlhNWIxMzAzMmFkNDAwY2M5NSJ9fQ==\",\n        \"reference\": \"51deb560-1e21-11f1-b3b0-5f0b8a187f78\",\n        \"resourceId\": \"7483686\",\n        \"expiresIn\": \"2026-03-12T15:39:49.056Z\",\n        \"urlStatusPay\": \"https://mf-core.refacil.co/refacilpay/resumen/62/51deb560-1e21-11f1-b3b0-5f0b8a187f78\",\n        \"resourceUrlId\": \"6240423\",\n        \"status\": 1\n    }\n}"},{"id":"da0af5ff-fb75-4d4a-8600-5e5be7507d9b","name":"200: QR Interoperable","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"paymentMethod\": {\n        \"id\": 248,\n        \"merchantId\": \"0074694472\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDK\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://mf-core.refacil.co/refacilpay/payInterOperableQr/79/6e69ec80-1e18-11f1-bd58-55ae657e32e8\",\n        \"reference\": \"6e69ec80-1e18-11f1-bd58-55ae657e32e8\",\n        \"resourceId\": \"2762848\",\n        \"expiresIn\": \"2026-04-11T13:36:10.481Z\",\n        \"urlStatusPay\": \"https://mf-core.refacil.co/refacilpay/resumen/79/6e69ec80-1e18-11f1-bd58-55ae657e32e8\",\n        \"resourceUrlId\": \"1762454\",\n        \"qr\": \"https://testing-pay.s3.us-east-2.amazonaws.com/dynamic_qr/interoperable/2762848.png\",\n        \"displayTimeout\": 90,\n        \"status\": 1\n    }\n}"},{"id":"7cee5048-6f14-4fd3-becb-a31f6d88633e","name":"200: Llaves Bre-B","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 300, // Opcional\n    \"paymentMethod\": {\n        \"id\": 250,\n        \"cellphone\": \"3888000801\",\n        \"docType\": \"CC\",\n        \"docNumber\": \"15545216\",\n        \"merchantId\": \"0074694472\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDL\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"@RESOB1771636\",\n        \"reference\": \"c6598540-1e18-11f1-942d-2ddd1adc50fa\",\n        \"resourceId\": \"2762849\",\n        \"expiresIn\": \"2026-03-12T13:43:40.489Z\",\n        \"urlStatusPay\": \"https://mf-core.refacil.co/refacilpay/resumen/79/c6598540-1e18-11f1-942d-2ddd1adc50fa\",\n        \"resourceUrlId\": \"1762455\",\n        \"qr\": \"@RESOB1771636\",\n        \"displayTimeout\": 90,\n        \"status\": 1\n    }\n}"},{"id":"da9ba55b-3511-4ade-872a-f57ebfce7679","name":"200: Tarjetas","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":""},{"key":"Authorization","value":"Bearer "}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 3600, // Opcional\n    \"paymentMethod\": {\n        \"id\": 273,\n        \"description\": \"Payment description\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDM\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://checkout.akua.la/links/lnk-4c66f2c0-d70f-4e15-be0c-71df6b9e5df9?sandbox=true\",\n        \"reference\": \"2a891a80-1e19-11f1-bd58-55ae657e32e8\",\n        \"resourceId\": \"2762850\",\n        \"expiresIn\": \"2026-04-11T13:41:26.000Z\",\n        \"urlStatusPay\": \"https://mf-core.refacil.co/refacilpay/resumen/79/2a891a80-1e19-11f1-bd58-55ae657e32e8\",\n        \"resourceUrlId\": \"1762456\",\n        \"status\": 1\n    }\n}"},{"id":"9a571cac-d23a-4dd6-82a1-d4d5ddf53231","name":"200: Whatsapp","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 10000,\n    \"brandId\": 79, // Opcional\n    \"expiresIn\": 2592000, // Opcional\n    \"paymentMethod\": {\n        \"id\": 277,\n        \"cellphone\": \"3100000000\",\n        \"pdfUrl\": \"https://yourwebsite.com/documents/report.pdf\", // Optional\n        \"whatsappAccountId\": \"wa-account-001\",\n        \"templateName\": \"payment_document\"\n    },\n    \"reference1\": \"EGfbOsiYQspMpgDN\",\n    \"reference2\": { // Opcional\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    },\n    \"returnUrl\": \"https://www.google.com/?hl=es\", // Opcional\n    \"showSummary\": true, // Opcional\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"2qzGwjZ6J9WXKOlzYzkM50S9\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\" // Opcional\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"url\": \"https://mf-core.refacil.co/refacilpay/payLink/79/a5487180-1e19-11f1-942d-2ddd1adc50fa\",\n        \"reference\": \"a5487180-1e19-11f1-942d-2ddd1adc50fa\",\n        \"resourceId\": \"2762851\",\n        \"expiresIn\": \"2026-04-11T13:44:52.029Z\",\n        \"urlStatusPay\": null,\n        \"resourceUrlId\": \"1762457\",\n        \"qr\": null,\n        \"displayTimeout\": null,\n        \"status\": 1\n    }\n}"},{"id":"82f0ee5f-62d0-44a9-97ba-ad0bbb108482","name":"400: Reference does exist","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"expiresIn\": 2592000,\n    \"paymentMethod\": {\n        \"id\": 277,\n        \"cellphone\": \"3017765147\",\n        \"pdfUrl\": \"https://testing-pay.s3.us-east-2.amazonaws.com/pdf/cashfactory/500.pdf\" // Optional\n    },\n    \"userMetadata\": {\n        \"ip\": \"1.2.3.2\",\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    },\n    \"amount\": 10000,\n    \"brandId\": 1,\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\",\n    \"returnUrl\": \"https://www.google.com/?hl=es\",\n    \"showSummary\": true,\n    \"reference1\": \"EGfbOsiYQspMpgDD\",\n    \"reference2\": {\n        \"Label\": {\n            \"Campos\": \"string\"\n        }\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-in/generate/payment-method/token"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"{\\\"data\\\":{\\\"message\\\":\\\"La referencia ya existe\\\",\\\"errorCode\\\":\\\"reference.exist\\\",\\\"statusCode\\\":400},\\\"class\\\":\\\"CoreApiException\\\"}\",\n    \"path\": \"/cash-in/generate/payment-method/token\",\n    \"date\": 1772025689937\n}"},{"id":"9218a5e4-b980-4b89-9f68-1a50957f02ae","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n    \"expiresIn\": 0,\r\n    \"paymentMethod\": {\r\n        \"id\": 155,\r\n        \"cellphone\": \"3051000002\"\r\n    },\r\n    \"userMetadata\": {\r\n        \"ip\": \"1.2.3.2\",\r\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\r\n        \"urlCommerce\": \"https://url-tucomercio.com\"\r\n    },\r\n    \"amount\": 10000,\r\n    \"brandId\": 1,\r\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\",\r\n    \"returnUrl\": \"https://www.google.com/?hl=es\",\r\n    \"showSummary\": true,\r\n    \"reference1\": \"EGfbOsiYQspMpgDD\",\r\n    \"reference2\": {\r\n        \"Label\": {\r\n            \"Campos\": \"string\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"1ef9c398-7c4d-428a-b40b-3bc9304ff12b","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"expiresIn\": 0,\r\n    \"paymentMethod\": {\r\n        \"id\": 155,\r\n        \"cellphone\": \"3051000002\"\r\n    },\r\n    \"userMetadata\": {\r\n        \"ip\": \"1.2.3.2\",\r\n        \"identifier\": \"123467hyujikolpñmnaafsddssd\",\r\n        \"urlCommerce\": \"https://url-tucomercio.com\"\r\n    },\r\n    \"amount\": 10000,\r\n    \"brandId\": 1,\r\n    \"webhookUrl\": \"https://webhook.site/271888cd-bd07-469a-88a8-e0ed7e93c368\",\r\n    \"returnUrl\": \"https://www.google.com/?hl=es\",\r\n    \"showSummary\": true,\r\n    \"reference1\": \"EGfbOsiYQspMpgDD\",\r\n    \"reference2\": {\r\n        \"Label\": {\r\n            \"Campos\": \"string\"\r\n        }\r\n    }\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"d024ef84-afb9-4a51-b495-47cb09f1bc32"}],"id":"f06e088a-45a0-460f-ac95-2846daf2fb9d","_postman_id":"f06e088a-45a0-460f-ac95-2846daf2fb9d","description":""}],"id":"9db9c582-9895-497c-9e33-de6cfc673834","description":"<p>The services that you will see below are the ones that will allow you to generate a payment resource depending on your needs.</p>\n<ol>\n<li><p>Payment link (Gateway with all payment methods).</p>\n</li>\n<li><p>Payment method (Specific payment method).</p>\n</li>\n</ol>\n<blockquote>\n<p>🔐 Authentication </p>\n</blockquote>\n<p>All requests must include the following headers:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Header</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Example</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Authorization</td>\n<td>Bearer token generated by the authentication service.</td>\n<td>Bearer eyJhbGciOiJIUzI1NiIs...</td>\n</tr>\n<tr>\n<td>x-transaction-token</td>\n<td>Transactional token specific to the service.</td>\n<td>9b48edde-652d-11ed-984e-02c840fe****</td>\n</tr>\n<tr>\n<td>Content-Type</td>\n<td>Content type of the request body.</td>\n<td>application/json</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"🧠-behavior-summary\">🧠 Behavior Summary</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Scenario</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>showSummary = true</strong></td>\n<td>Displays a transaction summary screen showing key details such as amount, reference, and date. Recommended for customer-facing flows where user confirmation is required.</td>\n</tr>\n<tr>\n<td><strong>showSummary = false</strong></td>\n<td>Skips the transaction summary and immediately redirects the user to the <code>returnUrl</code>. Commonly used for automated or pre-confirmed payment flows.</td>\n</tr>\n<tr>\n<td><strong>returnUrl provided</strong></td>\n<td>Automatically redirects the user to the specified <code>returnUrl</code> after payment completion. The merchant’s system is responsible for displaying the final transaction summary on that page. ⚠️ Important: If <code>showSummary</code> is set to <code>false</code> and a returnUrl is provided, when the user is redirected to the <code>returnUrl</code> after completing the payment, you must immediately make a request to <a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#dd3ba9f5-1f10-4109-b59d-6e5aad5e3799\">Transaction status</a> with the transaction reference to retrieve the final payment status and close the payment flow properly.</td>\n</tr>\n<tr>\n<td><strong>returnUrl not provided</strong></td>\n<td>Redirects the user to a default transaction summary page generated and hosted by <strong>Refacil Pay</strong>.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n","_postman_id":"9db9c582-9895-497c-9e33-de6cfc673834"},{"name":"Withdraw","item":[{"name":"Generate payment method","id":"af2c8513-6978-4bd1-b166-dba037457dc0","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"amount\": 1000,\n    \"reference1\": \"EGfbOsiYQspMpgBd\",\n    \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\n    \"withdrawMethod\": {\n        \"id\": 264,\n        \"key\": \"@REPRUEBAL7717\"\n    },\n    \"userMetadata\": {\n        \"identifier\": \"1234567890\",\n        \"ip\": \"127.0.0.1\",\n        \"urlCommerce\": \"https://url-tucomercio.com\"\n    }\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/cash-out/generate/withdraw-method/token","description":"<p>This endpoint allows you to <strong>generate withdrawal (cash-out) requests</strong> through the available payout methods.</p>\n<hr />\n<h3 id=\"💡-overview\">💡 Overview</h3>\n<p>The table below lists the available payout methods along with their corresponding IDs and brief descriptions.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Method ID</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>264</code></td>\n<td>Cash-out via <strong>Bre-B</strong></td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>⚠ <strong>Note:</strong><br />Each withdrawal method requires a specific object structure within the <code>\"withdrawMethod\"</code> field, as shown below. </p>\n</blockquote>\n<hr />\n<h2 id=\"🧩-payout-method-details\">🧩 Payout Method Details</h2>\n<h3 id=\"bre-b\"><strong>Bre-B</strong></h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">\"withdrawMethod\": {\n  \"id\": 264,\n  \"key\": \"@REPRUEBAL7717\"\n}\n\n</code></pre>\n<p><strong>Description:</strong><br />Transfers funds directly to a Bre-B account using the beneficiary’s unique Bre-B key.</p>\n<blockquote>\n<p>💡 <strong>Tip:</strong><br />The <code>key</code> field must contain a valid Bre-B account alias in the format <code>@USERNAME</code>. </p>\n</blockquote>\n<hr />\n<h2 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Amount to be withdrawn.</td>\n</tr>\n<tr>\n<td><code>reference1</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Unique transaction reference generated by the client (max 20 characters).</td>\n</tr>\n<tr>\n<td><code>webhookRequest</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Customer’s webhook URL to receive real-time withdrawal status updates.</td>\n</tr>\n<tr>\n<td><code>userMetadata</code></td>\n<td>object</td>\n<td>✅</td>\n<td>Object containing metadata related to the origin of the transaction.</td>\n</tr>\n<tr>\n<td><code>userMetadata.identifier</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Identifier for the user or merchant initiating the transaction.</td>\n</tr>\n<tr>\n<td><code>userMetadata.ip</code></td>\n<td>string</td>\n<td>✅</td>\n<td>IP address from which the transaction was initiated.</td>\n</tr>\n<tr>\n<td><code>userMetadata.urlCommerce</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Commerce or customer’s URL associated with the transaction.</td>\n</tr>\n<tr>\n<td><code>withdrawMethod</code></td>\n<td>object</td>\n<td>✅</td>\n<td>Object specifying the withdrawal method and destination details.</td>\n</tr>\n<tr>\n<td><code>withdrawMethod.id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>ID of the selected payout method (see table above).</td>\n</tr>\n<tr>\n<td><code>withdrawMethod.key</code></td>\n<td>string</td>\n<td>Conditional</td>\n<td>Required for <strong>Bre-B</strong> withdrawals.</td>\n</tr>\n<tr>\n<td><code>withdrawMethod.bankName</code></td>\n<td>string</td>\n<td>❌</td>\n<td>Optional bank name, if applicable for future payout methods.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n","urlObject":{"protocol":"https","path":["cash-out","generate","withdraw-method","token"],"host":["pay-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"98a5a2d4-6c8c-4e39-8327-4089e3ee3eb4","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"withdrawMethod\": {\r\n    \"id\": 264,\r\n    \"key\": \"@REPRUEBAL7717\"\r\n  },\r\n  \"amount\": 10000,\r\n  \"reference1\": \"string\",\r\n  \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"withdraw\": {\n            \"transactionId\": \"91926\",\n            \"userId\": \"215227\",\n            \"accountNumber\": \"3051000002\",\n            \"infoReference\": \"Ref_Erikolegrpc948\",\n            \"providerReference\": \"00wAQxtB5wscCgSIm\",\n            \"accountId\": null,\n            \"deletedAt\": null,\n            \"observation\": null,\n            \"id\": \"2239\",\n            \"createdAt\": \"2025-01-30T22:30:52.077Z\",\n            \"updatedAt\": \"2025-01-30T22:30:52.077Z\",\n            \"bankName\": \"Nequi\",\n            \"ownerName\": \"Jua* Man*** Pér** Cur***\",\n            \"keyType\": \"email\"\n        },\n        \"transactionReference\": \"dd66a5f0-df59-11ef-9975-d5b28168fd55\",\n        \"status\": 1\n    }\n}"},{"id":"cf629337-bf7b-40e7-8907-ce72d3f253d9","name":"400: Bad Request Invalid Amount","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n  \"withdrawMethod\": {\r\n    \"id\": 160,\r\n    \"cellphone\": \"3125763074\"\r\n  },\r\n  \"amount\": 10000,\r\n  \"reference1\": \"string\",\r\n  \"bankName\": \"Banco Rojo\",\r\n  \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"03\",\n    \"message\": \"Error al generar el recurso.\",\n    \"data\": {\n        \"errorCode\": \"\",\n        \"detail\": \"El monto ingresado está fuera del rango aceptado\"\n    }\n}"},{"id":"c88e3e06-843b-44f7-b57b-44258d0ec125","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n  \"withdrawMethod\": {\r\n    \"id\": 160,\r\n    \"cellphone\": \"3125763074\"\r\n  },\r\n  \"amount\": 10000,\r\n  \"reference1\": \"string\",\r\n  \"bankName\": \"Banco Rojo\",\r\n  \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"121461f6-9d5b-42e2-a3f9-5b22fd3ad168","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"withdrawMethod\": {\r\n    \"id\": 160,\r\n    \"cellphone\": \"3125763074\"\r\n  },\r\n  \"amount\": 10000,\r\n  \"reference1\": \"string\",\r\n  \"bankName\": \"Banco Rojo\",\r\n  \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"},{"id":"fd0cf022-cbc6-47a2-9197-c4087d897033","name":"501: Internal Server Error","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"withdrawMethod\": {\r\n    \"id\": 160,\r\n    \"cellphone\": \"3125763074\"\r\n  },\r\n  \"amount\": 10000,\r\n  \"reference1\": \"string\",\r\n  \"bankName\": \"Banco Rojo\",\r\n  \"webhookRequest\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"03\",\n    \"message\": \"Error al generar el recurso.\",\n    \"data\": {\n        \"errorCode\": \"\",\n        \"detail\": \"Request failed with status code 503\"\n    }\n}"}],"_postman_id":"af2c8513-6978-4bd1-b166-dba037457dc0"},{"name":"Balance Inquiry","id":"f80f9c28-3e29-4173-89bb-4f42f7e1195b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"userId\": 1085718\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/customer/getBalance","description":"<p>This service allows you to consult the balance exchange and the dispersion exchange associated with the client's identifier.</p>\n<blockquote>\n<p>To use the service, an authentication token is required, which must be sent as an Authorization header. </p>\n</blockquote>\n<p>Headers</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n<tr>\n<td>Authorization</td>\n<td>Bearer</td>\n</tr>\n</tbody>\n</table>\n</div><p>Body</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>userId (optional)</code></td>\n<td>number</td>\n<td>Integrated unique user identifier</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["customer","getBalance"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"b3f5220f-57d6-4894-8116-19531706196f","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"userId\": 1085718\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"bags\": [\n        {\n            \"bag\": \"Saldo de dispersión\",\n            \"amount\": \"9823225.00\"\n        },\n        {\n            \"bag\": \"Bolsa de Multiproducto\",\n            \"amount\": \"10104980.00\"\n        }\n    ],\n    \"date\": \"29/08/2024 15:18:47\"\n}"},{"id":"ed5fa67c-5e42-4f95-a704-cee05fd69f22","name":"400: Invalid User","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"userId\": 1085718\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 400,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Ocurrió un error al consultar las bolsas\",\n    \"date\": 1724962461988\n}"},{"id":"c43814a9-1e06-4cb6-ab4a-ef31ee8de330","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n    \"userId\": 1085718\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"f5be124b-ac20-40b8-85ad-5f81460e464f","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n    \"userId\": 1085718\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"f80f9c28-3e29-4173-89bb-4f42f7e1195b"}],"id":"750b1f79-ec6f-40e2-b692-3e13bc6b7662","description":"<p>This service allows you to generate withdrawal requests through the enabled dispersion means.</p>\n<blockquote>\n<p>🔐 Authentication </p>\n</blockquote>\n<p>All requests must include the following headers:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Header</strong></th>\n<th><strong>Description</strong></th>\n<th><strong>Example</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Authorization</td>\n<td>Bearer token generated by the authentication service.</td>\n<td>Bearer eyJhbGciOiJIUzI1NiIs...</td>\n</tr>\n<tr>\n<td>x-transaction-token</td>\n<td>Transactional token specific to the service.</td>\n<td>9b48edde-652d-11ed-984e-02c840fe****</td>\n</tr>\n<tr>\n<td>Content-Type</td>\n<td>Content type of the request body.</td>\n<td>application/json</td>\n</tr>\n</tbody>\n</table>\n</div><blockquote>\n<p>Important fields within the requests:<br />Webhook: This is the url of the client's webhook to where our service sends the transaction status and transaction detail information.</p>\n</blockquote>\n","_postman_id":"750b1f79-ec6f-40e2-b692-3e13bc6b7662"},{"name":"Payment information","item":[{"name":"Transaction Summary","item":[],"id":"138e1363-b285-4620-bf93-e03ed539d967","description":"<h2 id=\"🧾-implementation-guide\">🧾 Implementation Guide</h2>\n<p>This section describes the <strong>mandatory structure and behavior</strong> of the transaction summary screen that API clients must implement when <code>showSummary</code> is set to <code>false</code>.<br />The purpose of this guide is to ensure a consistent and standardized experience across all integrations.</p>\n<hr />\n<h3 id=\"1-header\"><strong>1. Header</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Element</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Logo</strong></td>\n<td>The logo of the API user (merchant or partner) that generated the payment resource.</td>\n</tr>\n<tr>\n<td><strong>Title</strong></td>\n<td>Must display the <strong>final transaction status</strong>, for example: “Successful Transaction”, “Pending Transaction”, or “Failed Transaction”.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"2-transaction-information-block\"><strong>2. Transaction Information Block</strong></h3>\n<p>Use a vertical column layout with labels and values aligned for clarity.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Transaction ID</strong></td>\n<td>Unique identifier of the transaction.</td>\n</tr>\n<tr>\n<td><strong>Status</strong></td>\n<td>Final transaction status, as returned by the provider or payment method.</td>\n</tr>\n<tr>\n<td><strong>Date &amp; Time</strong></td>\n<td>Timestamp of when the payment attempt or confirmation was processed.</td>\n</tr>\n<tr>\n<td><strong>Payment Method</strong></td>\n<td>Channel or provider used (e.g., PSE, OnePay).</td>\n</tr>\n<tr>\n<td><strong>Merchant Name</strong></td>\n<td>The commercial name of the business associated with the transaction.</td>\n</tr>\n<tr>\n<td><strong>Product</strong></td>\n<td>The origin of the transaction (e.g., Payment Link, Dynamic QR, Direct Payment).</td>\n</tr>\n<tr>\n<td><strong>Bank</strong></td>\n<td><em>(Mandatory for PSE transactions)</em> — must display the selected banking entity.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"3-total-amount-section\"><strong>3. Total Amount Section</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Element</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Label:</strong> <code>Total:</code></td>\n<td>Displayed prominently next to the transaction amount.</td>\n</tr>\n<tr>\n<td><strong>Value:</strong> <code>$5,102.00</code></td>\n<td>The total amount processed by the payment method.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"4-available-actions\"><strong>4. Available Actions</strong></h3>\n<p>Located below the total block, centered, with sufficient spacing.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Action</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Download</strong> <em>(optional)</em></td>\n<td>Generates and downloads a PDF receipt for the transaction.</td>\n</tr>\n<tr>\n<td><strong>Return to Commerce</strong> <em>(optional)</em></td>\n<td>Redirects the user back to the commerce page where the transaction originated.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"5-footer\"><strong>5. Footer</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Element</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>Logo</strong></td>\n<td>Include the <strong>RefacilPay</strong> logo in the footer.  <br /><em>Note: The logo must follow the official brand guidelines provided by RefacilPay.</em></td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"⚙️-functional-behavior\">⚙️ <strong>Functional Behavior</strong></h3>\n<ul>\n<li><p>The transaction receipt must appear immediately after the payment attempt, whether the result is <strong>successful</strong>, <strong>pending</strong>, or <strong>rejected</strong>.</p>\n</li>\n<li><p>The displayed status must reflect the <strong>final response</strong> received from the payment provider or channel.</p>\n</li>\n<li><p>The transaction receipt must remain available for later consultation or download (where applicable).</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"⚠️-technical-requirement\">⚠️ <strong>Technical Requirement</strong></h3>\n<p>For all <strong>PSE</strong> and <strong>PSE Gateway</strong> transactions, the API client <strong>MUST</strong> make a request to the <a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#dd3ba9f5-1f10-4109-b59d-6e5aad5e3799\">Transaction status</a> service as soon as the end user reaches the custom transaction summary page implemented by the client.<br />This call is required to obtain the <strong>final payment status</strong> and ensure proper synchronization with PSE transaction confirmation.</p>\n<blockquote>\n<p><strong>Example Behavior:</strong><br />After the payment is completed in the PSE interface, the user is automatically redirected to the URL specified in <code>returnUrl</code>.<br />Upon loading that page, your system must immediately call the <a href=\"https://documenter.getpostman.com/view/35146358/2sA3QpDEFA#dd3ba9f5-1f10-4109-b59d-6e5aad5e3799\">Transaction status</a> using the transaction reference to confirm and display the definitive status of the transaction.</p>\n</blockquote>\n","_postman_id":"138e1363-b285-4620-bf93-e03ed539d967"},{"name":"Transaction status","id":"e643a77d-8a58-4414-9ae9-454ef6e312e6","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n  \"reference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/payment/status","description":"<p>This service allows you to check the status of a transaction made, for this you must have the <em>reference</em> data that returned the response when generating any payment resource.</p>\n<p>In the response you will get the <em>status</em> <em>id</em> which will mean the following</p>\n<p>0 - Transaction Rejected</p>\n<p>1 - Pending Transaction</p>\n<p>2 - Transaction Approved</p>\n<p>3 - Failed Transaction</p>\n<p>5 - Transaction Cancelled</p>\n<p>9 - Processing Transaction</p>\n<p>Headers</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n<tr>\n<td>Authorization</td>\n<td>Bearer</td>\n</tr>\n</tbody>\n</table>\n</div><p>Body</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>reference</code>*</td>\n<td>string</td>\n<td>Product reference</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["payment","status"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"aaf3cc81-0f16-42f1-b30a-4266472c6187","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"reference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"id\": \"1342\",\n        \"cost\": \"$1,190.00\",\n        \"status\": \"1\",\n        \"date\": \"2022-12-13T10:22:34.775Z\",\n        \"providerReference\": \"8495\",\n        \"amount\": \"$18,000.00\",\n        \"description\": null,\n        \"paymentMethod\": null,\n    }\n}"},{"id":"22df1e7f-88c1-4846-a136-2aa5672230c3","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n  \"reference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"1a69c1ee-fe71-4fcd-b8c8-9167aa4e8792","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"reference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"e643a77d-8a58-4414-9ae9-454ef6e312e6"},{"name":"Transaction status - Custom Reference","id":"2a47b441-1a1d-436f-99f2-820669232c19","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n  \"customerReference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/payment/customer-reference/status","description":"<h2 id=\"🔍-check-transaction-by-customer-reference\">🔍 Check Transaction by Customer Reference</h2>\n<p>This endpoint allows <strong>API Pay</strong> users to query the status of a transaction using only the <code>customerReference</code> value originally provided when generating a resource as <code>reference1</code> through any of the following endpoints:</p>\n<ul>\n<li><p><code>/cash-in/generate/payment-link/token</code></p>\n</li>\n<li><p><code>/cash-in/generate/payment-method/token</code></p>\n</li>\n<li><p><code>/cash-out/generate/withdraw-method/token</code></p>\n</li>\n</ul>\n<p>This service is useful for retrieving the internal <strong>Refacil</strong> transaction information associated with a previously submitted customer reference.</p>\n<hr />\n<h2 id=\"🔐-authentication\">🔐 Authentication</h2>\n<p>This endpoint <strong>requires</strong> a valid Bearer Token in the request headers. Requests without valid authentication will be rejected with an <code>Unauthorized</code> error.</p>\n<h2 id=\"📤-successful-response\">📤 Successful Response</h2>\n<ul>\n<li><p><code>exists</code>: <code>true</code> indicates that the transaction associated with the provided <code>customerReference</code> was found.</p>\n</li>\n<li><p><code>id</code>: Internal Refacil transaction ID.</p>\n</li>\n<li><p><code>status</code>: Transaction status code (see table below).</p>\n</li>\n<li><p><code>reference</code>: Full Refacil transaction reference, which can be used to query <code>/payment/status</code>.</p>\n</li>\n</ul>\n<h3 id=\"ℹ️-status-code-reference\">ℹ️ Status Code Reference</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Status Code</th>\n<th>Meaning</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>0</code></td>\n<td>Transaction Rejected</td>\n</tr>\n<tr>\n<td><code>1</code></td>\n<td>Transaction Pending</td>\n</tr>\n<tr>\n<td><code>2</code></td>\n<td>Transaction Approved</td>\n</tr>\n<tr>\n<td><code>3</code></td>\n<td>Transaction Failed</td>\n</tr>\n<tr>\n<td><code>5</code></td>\n<td>Transaction Cancelled</td>\n</tr>\n<tr>\n<td><code>9</code></td>\n<td>Transaction Processing</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n","urlObject":{"protocol":"{{protocol}}","path":["payment","customer-reference","status"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"20ccad29-3aa9-461f-97c8-4c64e2368643","name":"200: Resource found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"customerReference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/payment/customer-reference/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": {\n    \"id\": \"1199818\",\n    \"status\": 0,\n    \"reference\": \"2cb9e280-3be3-11f0-affe-a53e2cc6613d\",\n    \"exists\": true\n  }\n}\n"},{"id":"c5d75b41-19cd-41a7-90a7-1a5c3c00c4eb","name":"200: Resource not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n    \"customerReference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/payment/customer-reference/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"03\",\n    \"message\": \"Resource not found\",\n    \"data\": {\n        \"exists\": false\n    }\n}"},{"id":"20b8df6e-f1a9-4fe4-bdfa-50e9d2bae34e","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"}],"body":{"mode":"raw","raw":"{\n    \"customerReference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/payment/customer-reference/status"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Thu, 29 May 2025 21:36:24 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"151"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"ETag","value":"W/\"97-SUd29RZRjxjmVREQrV/dZp2ox0o\""}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"path\": \"/payment/customer-reference/status\",\n    \"date\": 1748554584467\n}"}],"_postman_id":"2a47b441-1a1d-436f-99f2-820669232c19"},{"name":"Characteristics of a payment method","id":"cd1221a0-8bf4-4922-a866-2cebd9c402ee","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n  \"id\": 133\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/payment/features","description":"<p>This service allows you to consult the necessary characteristics of a payment method to successfully generate a resource. For example, obtain the PSE banks</p>\n<p>Headers</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Name</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td>application/json</td>\n</tr>\n<tr>\n<td>Authorization</td>\n<td>Bearer</td>\n</tr>\n</tbody>\n</table>\n</div><p>Body</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code>*</td>\n<td>integer</td>\n<td>Product identification</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"{{protocol}}","path":["payment","features"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"c252cd0a-6f51-4591-bd34-278ba327df4b","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"id\": 133\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": \"00\",\n    \"message\": \"Operación exitosa.\",\n    \"data\": {\n        \"banks\": [\n            {\n                \"id\": \"0\",\n                \"name\": \"A continuación seleccione su banco\"\n            },\n            {\n                \"id\": \"1552\",\n                \"name\": \"BAN.CO\"\n            },\n            {\n                \"id\": \"1059\",\n                \"name\": \"BANCAMIA\"\n            },\n            {\n                \"id\": \"1040\",\n                \"name\": \"BANCO AGRARIO\"\n            },\n            {\n                \"id\": \"1081\",\n                \"name\": \"BANCO AGRARIO DESARROLLO\"\n            }\n          }  \n          \n      }\n"},{"id":"aa598f26-1b2f-4697-956e-22e65149abf8","name":"401: Authentication error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"}],"body":{"mode":"raw","raw":"{\r\n  \"id\": 133\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"134"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:03 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"86-kcBuGThx4cPlprzs2xpVmJyz7fI\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"vQVNdZnlAF2O2YPtMv10xMZ2OJNvefoOIsh3FXaEXJqsT56hiy-GNA=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Error en la autenticación\",\n    \"date\": 1730492283161\n}"},{"id":"61d708a4-16f6-447c-9f3f-ecc48168c564","name":"401: Authentication not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\r\n  \"id\": 133\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"136"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:18:57 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"88-bwrowifrUlJgfsEZM/enGjUQtLc\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=31536000"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"X-Cache","value":"Error from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"MSC3fgs7xlHyD1mZJrcWZW3nojCkBGwO7vI3F6ZTJa1YcCUO58DeYw=="}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 401,\n    \"errorCode\": \"server.error\",\n    \"message\": \"Autenticación no encontrada\",\n    \"date\": 1730492337196\n}"}],"_postman_id":"cd1221a0-8bf4-4922-a866-2cebd9c402ee"}],"id":"6a757665-08eb-491b-9295-10aadf558777","description":"<p>These services will allow us to validate the status of a transaction and consult the characteristics of a payment method.</p>\n","_postman_id":"6a757665-08eb-491b-9295-10aadf558777"},{"name":"Webhook Notification","item":[{"name":"Structure and example of webhook request","id":"d21558ca-7d3f-453e-bc06-6778b7273f8b","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"Authorization","value":"Bearer {{tokenLogin}}"}],"body":{"mode":"raw","raw":"{\n  \"reference\": \"12442830-7afb-11ed-b265-b9457b46***3\"\n}","options":{"raw":{"language":"json"}}},"url":"{{protocol}}://{{serverNamePayApi}}/webhook/notify","description":"<p>Body</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>amount*</td>\n<td>Integer</td>\n<td>Total transaction value</td>\n</tr>\n<tr>\n<td>cost*</td>\n<td>Integer</td>\n<td>Transaction cost</td>\n</tr>\n<tr>\n<td>Resource</td>\n<td>Object</td>\n<td>Object</td>\n</tr>\n<tr>\n<td>id</td>\n<td>Integer</td>\n<td>Identifier of the payment resource</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>String</td>\n<td>Date and time at which the transaction was processed</td>\n</tr>\n<tr>\n<td>status*</td>\n<td>Object</td>\n<td>Transaction status identifier</td>\n</tr>\n<tr>\n<td>id*</td>\n<td>String</td>\n<td>Transaction status ID : 1 Pending , 2 Approved ,3 Failed</td>\n</tr>\n<tr>\n<td>id *</td>\n<td>Integer</td>\n<td>transaction identifier</td>\n</tr>\n<tr>\n<td>description</td>\n<td>String</td>\n<td>Status detail</td>\n</tr>\n<tr>\n<td>Key</td>\n<td>interger</td>\n<td>Key</td>\n</tr>\n<tr>\n<td>PaymentMethod</td>\n<td>Object</td>\n<td>Payment method</td>\n</tr>\n<tr>\n<td>id</td>\n<td>String</td>\n<td>Method identifier</td>\n</tr>\n<tr>\n<td>name</td>\n<td>String</td>\n<td>payment method name</td>\n</tr>\n<tr>\n<td>type</td>\n<td>String</td>\n<td>method</td>\n</tr>\n<tr>\n<td>extra</td>\n<td>Object</td>\n<td>Object</td>\n</tr>\n<tr>\n<td>reference1*</td>\n<td>String</td>\n<td>Unique reference to the transaction provided when sending the request to generate the resource</td>\n</tr>\n<tr>\n<td>reference2</td>\n<td>String</td>\n<td>Allows to append extra information provided by the client</td>\n</tr>\n<tr>\n<td>reference3</td>\n<td>String</td>\n<td>Allows to append extra information provided by the customer</td>\n</tr>\n<tr>\n<td>commerceId</td>\n<td>String</td>\n<td>Commerce identifier</td>\n</tr>\n<tr>\n<td>createdAt</td>\n<td>String</td>\n<td>Date and time the transaction was created</td>\n</tr>\n<tr>\n<td>signature</td>\n<td>String</td>\n<td>Signature generated for webhook notification</td>\n</tr>\n<tr>\n<td>data</td>\n<td>Object</td>\n<td>Object with all data</td>\n</tr>\n<tr>\n<td>Transaction</td>\n<td>String</td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"transfer-state-machine\">Transfer state machine</h3>\n<img src=\"https://content.pstmn.io/89f89557-2e1b-44c2-8dcb-d9e7d2f32c54/aW1hZ2UucG5n\" width=\"293\" height=\"380\" />","urlObject":{"protocol":"{{protocol}}","path":["webhook","notify"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"ce32e161-20b0-4e03-aa8b-5f669baa0169","name":"200: Ok Successful","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-transaction-token","value":"{{transactionalToken}}"},{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"data\": {\r\n        \"Transaction\": {\r\n            \"id\": 38**,\r\n            \"amount\": 20000,\r\n            \"cost\": 500.0,\r\n            \"Status\": {\r\n                \"id\": 2,\r\n                \"description\": \"Transacción aprobada\"\r\n            },\r\n            \"Resource\": {\r\n                \"id\": 1002***,\r\n                \"key\": 18,\r\n                \"PaymentMethod\": {\r\n                    \"id\": 133,\r\n                    \"name\": \"PSE\"\r\n                },\r\n                \"extra\": {\r\n                    \"reference1\": \"435sdfsdf4\",\r\n                    \"reference2\": \"reference2\",\r\n                    \"reference3\": \"reference3\",\r\n                    \"commerceId\": \"5641849815618\"\r\n                }\r\n            },\r\n            \"createdAt\": \"2023-02-16 11:06:59\",\r\n            \"updatedAt\": \"2023-02-16 11:08:54\"\r\n        }\r\n    },\r\n    \"signature\": \"aa2f472ad7e84524a02d1716b56fc16ec2a87***\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://pay-api.qa.refacil.co/trx-token/generate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"107"},{"key":"Connection","value":"keep-alive"},{"key":"Date","value":"Fri, 01 Nov 2024 20:17:25 GMT"},{"key":"X-Powered-By","value":""},{"key":"ETag","value":"W/\"6b-0dCGoZWHzsNFKqnQWZCYbct/JaY\""},{"key":"Server","value":"refacil.com"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"X-Frame-Options","value":"SAMEORIGIN"},{"key":"Referrer-Policy","value":"no-referrer"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"Strict-Transport-Security","value":"max-age=63072000; includeSubdomains; preload"},{"key":"Permissions-Policy","value":"geolocation=(self)"},{"key":"Vary","value":"Origin"},{"key":"Access-Control-Allow-Origin","value":"*"},{"key":"Cache-Control","value":"no-cache"},{"key":"X-Cache","value":"Miss from cloudfront"},{"key":"Via","value":"1.1 9731114c592d557eb8c861bd3ffa9908.cloudfront.net (CloudFront)"},{"key":"X-Amz-Cf-Pop","value":"CMH68-P2"},{"key":"X-Amz-Cf-Id","value":"CXZ2m9SOeqNyF_xQbqGXkHDA8Ora3unN419YKniR4GCxN5CsgRANEA=="}],"cookie":[],"responseTime":null,"body":""}],"_postman_id":"d21558ca-7d3f-453e-bc06-6778b7273f8b"}],"id":"124620cd-4caa-4d5a-b2a9-64a0b7bb873e","description":"<p>This component must be built by the merchant to receive the transaction notification data.</p>\n<p>You must take into account the following steps:</p>\n<p>**1.**You must create a Webhook without authentication.</p>\n<p><strong>2. The</strong> Url created will be the one you send in all requests when generating the payment resource in the “_WebhookUrl_” field. It is important to keep in mind that if for some reason you change the webhook you must modify the urls that you send in each generated resource.</p>\n<img src=\"https://content.pstmn.io/10fdac74-e60a-41f2-b9ff-8b5777a7afc0/aW1hZ2UucG5n\" width=\"322\" height=\"117\" />\n\n<p>A signature must be generated to validate the integrity of the messages sent to the webhook and the fields must be concatenated in the following way:</p>\n<p><em><strong>HASH_KEY</strong></em> <em>=This data must be requested to the support area</em>.</p>\n<p><em><strong>let signature</strong></em> <em>= referenceId-resourceId-amount-updatedAt-HASH_KEY; signature = crypto.createHmac(“sha1”, HASH_KEY).update(signature).digest(“hex”);</em></p>\n<p>Example of a response that will reach your Webhook</p>\n<p><strong>Response</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"realAmount\": 20000,\n  \"amount\": 19405,\n  \"cost\": \"$595.00\",\n  \"referenceId\": \"38**\",\n  \"moduleId\": 9,\n  \"productId\": 117,\n  \"referenceKey\": \"3538d790-ae14-11ed-be2d-4d9b1bc987e6\",\n  \"paymentMethod\": \"PSE\",\n  \"userId\": 189067,\n  \"resourceId\": \"10024**\",\n  \"updatedAt\": \"2023-02-16 11:11:55\",\n  \"providerId\": 8,\n  \"providerReference\": \"3122330\",\n  \"reference1\": \"435sdfsd**\",\n  \"reference2\": {\n    \"Label\": {\n      \"Information\": \"Por seguridad algunos datos se encuentran cifrados\",\n      \"Name\": \"L**A\",\n      \"Email\": \"l**am@**\",\n      \"CellPhone\": \"3**4\",\n      \"DocumentType\": \"C\",\n      \"DocumentNumber\": \"52019859\",\n      \"Description\": \"Abono\",\n      \"Commerce\": \"Skandia\",\n      \"Reference1\": null,\n      \"Reference2\": null,\n      \"Reference3\": null\n    },\n    \"Data\": {\n      \"ConciliationCode\": \"FCO\",\n      \"ConciliationContract\": \"1277840\",\n      \"DocType\": \"N\",\n      \"DocNumber\": \"800194363\"\n    },\n    \"returnUrl\": \"https://www.google.com/\"\n  },\n  \"bankId\": \"1022\",\n  \"bankName\": \"BANCO UNION COLOMBIANO\",\n  \"status\": 2,\n  \"sign\": \"aa2f472ad7e84524a02d1716b56fc16ec2a87***\",\n  \"error\": {\n    \"code\": \"20-07A\",\n    \"message\": \"Error técnico en Lambda\"\n  }\n}\n\n</code></pre>\n<ul>\n<li><p>Within the webhook an <strong>\"error</strong> ” object is sent that shows the error <em><strong>code</strong></em> and <em><strong>message</strong></em> associated with rejections received from the supplier/bank or cancellation of the transaction when the generation of the resource is not completed.</p>\n</li>\n<li><p>The error codes are printed when the transaction is <em><strong>Rejected</strong></em> by the bank or when it is <em><strong>Cancelled</strong></em> because the resource generation could not be completed.</p>\n</li>\n</ul>\n<p><strong>Notification for Withdraw</strong></p>\n<p>For withdraws, a notification will be sent to the webhook provided in the application. This notification will follow the structure mentioned above and will additionally include the withdrawal data. An example is provided below:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n    ...\"webhook\",\n    \"withdraw\": {\n        \"id\": \"1403**\",\n        \"transactionId\": \"5690**\",\n        \"userId\": 189067,\n        \"providerReference\": \"3122330\",\n        \"accountNumber\": \"3051000002\",\n        \"accountId\": null,\n        \"createdAt\": \"2023-02-16 11:10:55\",\n        \"updatedAt\": \"2023-02-16 11:12:55\",\n        \"deletedAt\": null,\n        \"infoReference\": \"435sdfsd**\",\n        \"observation\": null\n    },\n}\n\n</code></pre>\n<blockquote>\n<p><em><strong>The implementation of the webhook by the API user is mandatory. The reception and storage of the information for the reconciliation process by the API user with RefácilPay must be ensured.</strong><strong>**</strong>**__<strong>This item will be evaluated during the certification process and will be mandatory for the transition to Production.</strong></em></p>\n</blockquote>\n","_postman_id":"124620cd-4caa-4d5a-b2a9-64a0b7bb873e"},{"name":"Providers - Test environment","item":[],"id":"cb1f3d89-570c-4e52-9c51-e3e955f40ca9","description":"<p>In this section, you will find information about the providers that you can use in test environment to perform the complete payment flow.</p>\n<p>It is possible to perform a complete payment flow, either by generating a payment link or by generating a direct payment.</p>\n<h2 id=\"🧪-generating-a-payment-link\">🧪 Generating a Payment link</h2>\n<p>To generate a payment link, it is necessary to use the “Generate Payment Link” service, detailed in the Payment section.</p>\n<p>Once the resource with the payment link is generated, you can access the link provided in the service response, in the <code>url</code> field. By accessing this link, it is possible to select among the payment methods offered by RefácilPay. Below is detailed how to complete the payment process for the payment methods available in the test environment.</p>\n<p><strong>PSE</strong></p>\n<ol>\n<li><p><strong>Select the Bank:</strong> Start the payment process by choosing <strong>\"Banco Unión Colombiano</strong> ” as the financial entity.</p>\n</li>\n<li><p><strong>Enter your Personal Data:</strong> Complete the form with your personal data required to continue with the transaction.</p>\n</li>\n<li><p><strong>Payment Simulation:</strong> During the payment simulation, you will be asked to enter three specific pieces of information. This data allows you to complete the test flow properly.</p>\n</li>\n</ol>\n<img src=\"https://content.pstmn.io/fbb997a7-898e-4e58-bf4d-fb5db0a40158/aW1hZ2UucG5n\" width=\"338\" height=\"151\" />\n\n<img src=\"https://content.pstmn.io/fee36438-d0de-4627-984c-15b9cfc2f9d7/aW1hZ2UucG5n\" width=\"344\" height=\"98\" />\n\n<img src=\"https://content.pstmn.io/8fc72ea4-4cab-4d0b-9df9-c64b8166bab8/aW1hZ2UucG5n\" width=\"352\" height=\"105\" />\n\n<img src=\"https://content.pstmn.io/a35eb8dd-cd57-4be2-bee2-72fa7b19e690/aW1hZ2UucG5n\" width=\"341\" height=\"207\" />\n\n<p><strong>Bancolombia BNPL (Compra y Paga Después)</strong></p>\n<ol>\n<li><p><strong>Select the Payment Method:</strong> Start the payment process by choosing the <strong>\"Compra y Paga Después</strong> ” bank as your payment option.</p>\n</li>\n<li><p><strong>Enter your Personal Data:</strong> Complete the form with your personal data required to continue with the transaction.</p>\n</li>\n<li><p><strong>Quota Validation:</strong> The system will validate if the client has an available quota to request the loan corresponding to the payment.</p>\n</li>\n<li><p><strong>User Login:</strong> The login process begins in direct experience with Bancolombia.</p>\n</li>\n</ol>\n<blockquote>\n<p>Minimum Amount: Be sure to enter a minimum amount of $100,000 to use this payment method. </p>\n</blockquote>\n<img src=\"https://content.pstmn.io/b06f65a9-d895-4677-8af5-e4315a2064f7/aW1hZ2UucG5n\" width=\"300\" height=\"204\" />\n\n<p>Validate if the client has available credit to request the loan payment.</p>\n<img src=\"https://content.pstmn.io/d9d589fa-bc0c-4720-b7f2-c1e695d4012e/aW1hZ2UucG5n\" width=\"304\" height=\"203\" />\n\n<img src=\"https://content.pstmn.io/7b14e49d-d5e0-48a9-af1b-1330470ef4d8/aW1hZ2UucG5n\" width=\"314\" height=\"200\" />\n\n<img src=\"https://content.pstmn.io/8177d6b3-3720-466c-9356-e89e17c20a27/aW1hZ2UucG5n\" width=\"322\" height=\"345\" />\n\n<img src=\"https://content.pstmn.io/a7712912-1191-4de6-9344-2e58fd33246e/aW1hZ2UucG5n\" width=\"332\" height=\"197\" />\n\n<h2 id=\"🧪-generating-a-resource-with-payment-method-cash-in\">🧪 Generating a Resource with Payment Method (Cash-in)</h2>\n<p>To generate a resource with a payment method, use the <strong>\"Generate Payment Method\"</strong> service as detailed in the <strong>Payments</strong> section.</p>\n<p>The simulation allows testing both successful and failed flows by using specific cellphone numbers in the request. These numbers are applicable for <strong>collection (P2B)</strong> transactions using <strong>Nequi</strong> and <strong>Daviplata</strong>.</p>\n<h3 id=\"📱-test-wallets--p2b\">📱 Test Wallets – P2B</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Phone Number</th>\n<th>Behavior Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>+573051000090</code></td>\n<td>Wallet with <strong>automatic acceptance</strong> of P2B transactions</td>\n</tr>\n<tr>\n<td><code>+573051000080</code></td>\n<td>Wallet with <strong>automatic rejection</strong> of P2B transactions</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"✅-successful-p2b-flow\">✅ Successful P2B Flow</h3>\n<p>Use <strong><code>+573051000090</code></strong> to simulate a payment that is processed successfully. This is useful to validate expected behaviors in a successful collection scenario.</p>\n<h3 id=\"❌-failed-p2b-flow\">❌ Failed P2B Flow</h3>\n<p>Use <strong><code>+573051000080</code></strong> to simulate a rejected collection transaction. This allows testing how the system handles unsuccessful flows.</p>\n<p><strong>Important:</strong> After consuming the payment method generation service, the user <strong>MUST</strong> notify <strong>Refacil</strong> of this action. The final response time may vary depending on asynchronous notifications between <strong>Refacil</strong> and the provider.</p>\n<p><strong>Suggestion for Testing:</strong></p>\n<p>In all test scenarios, we recommend using <strong>low transaction amounts</strong> when generating resources in the <strong>STG environment</strong>. This helps avoid rejections due to possible fraud detection mechanisms triggered by high-value test transactions.</p>\n<hr />\n<h2 id=\"💳-card-payments\">💳 Card Payments</h2>\n<p>To test the card payment method (ID: 273), you can use the following test cards to simulate different authorization, approval, and rejection scenarios within the payment processing system.</p>\n<h3 id=\"✅-cards-for-approved-payments\">✅ Cards for Approved Payments</h3>\n<p>The following test card numbers can be used to simulate successful transactions.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Card Type</th>\n<th>Card Number</th>\n<th>Approval Reason</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Mastercard (Credit)</td>\n<td><code>5383 0400 0000 0002</code></td>\n<td>Transaction approved</td>\n</tr>\n<tr>\n<td>Mastercard (Debit)</td>\n<td><code>5200 0000 0000 0007</code></td>\n<td>Transaction approved</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"❌-cards-for-rejected-payments\">❌ Cards for Rejected Payments</h3>\n<p>These test card numbers simulate rejection scenarios.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Card Type</th>\n<th>Card Number</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Mastercard (Credit)</td>\n<td><code>5555 4444 3333 1111</code></td>\n</tr>\n<tr>\n<td>Mastercard (Credit)</td>\n<td><code>5404 0000 0000 0001</code></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note:</strong> These test cards are only available in the test environment (QA/Sandbox) and should not be used in production.</p>\n<hr />\n<h2 id=\"🧪-withdraw-as-a-product-cash-out\">🧪 Withdraw as a Product (Cash-out)</h2>\n<p>To test the generation of withdraw resources, use the <strong>Withdraw</strong> section configuration and the test numbers below. These flows simulate <strong>B2P (withdraw)</strong> transactions with successful and failed outcomes based on the number used.</p>\n<h3 id=\"📱-test-wallets--b2p\">📱 Test Wallets – B2P</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Phone Number</th>\n<th>Behavior Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>+573051000002</code></td>\n<td>Wallet with <strong>automatic acceptance</strong> of B2P transactions</td>\n</tr>\n<tr>\n<td><code>+573002491283</code></td>\n<td>Wallet with <strong>automatic rejection</strong> of B2P transactions</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"✅-successful-b2p-flow\">✅ Successful B2P Flow</h3>\n<p>Use <strong><code>+573051000002</code></strong> to simulate a successful withdraw, allowing validation of the correct flow.</p>\n<h3 id=\"❌-failed-b2p-flow\">❌ Failed B2P Flow</h3>\n<p>Use <strong><code>+573002491283</code></strong> to simulate a rejected withdraw. This helps ensure the system correctly handles and responds to errors in the process.</p>\n<p><strong>Important:</strong> For each withdraw request, the user must <strong>notify Refacil</strong> of the consumption. Response times may vary due to interactions between <strong>Refacil</strong> and the provider.</p>\n<p><strong>Suggestion for Testing:</strong></p>\n<p>In all test scenarios, we recommend using <strong>low transaction amounts</strong> when generating withdraws in the <strong>STG environment</strong>. This helps avoid false positives related to fraud prevention systems during testing.</p>\n<hr />\n<h2 id=\"📘-glossary\">📘 Glossary</h2>\n<ul>\n<li><p><strong>P2B:</strong> Payment from a person to a business. Also referred to as <em>payment method generation</em> or <em>recapture</em>.</p>\n</li>\n<li><p><strong>B2P:</strong> Payment from a business to a person. Also referred to as <em>scatter</em>.</p>\n</li>\n</ul>\n","_postman_id":"cb1f3d89-570c-4e52-9c51-e3e955f40ca9"},{"name":"eCommerce Integration","item":[],"id":"6fa53852-900a-48b3-a650-0d31a25590ee","description":"<img src=\"https://content.pstmn.io/d2c9fab1-0bbf-40ea-9022-6cc52b24dbb3/aW1hZ2UucG5n\" width=\"214\" height=\"104\" />\n\n<p>This section provides a detailed guide for the integration of eCommerce and online stores with RefácilPay. The system enables simple and efficient integration, offering customers a secure, fast and hassle-free payment experience.</p>\n<p><strong>Steps to follow for integration</strong></p>\n<ol>\n<li><p><strong>Store registration</strong>: Create an account and complete the initial setup.</p>\n</li>\n<li><p><strong>Obtain API consumption token</strong>: Generate and save the API credentials required for the integration.</p>\n</li>\n<li><p><strong>API consumption</strong>: Follow the technical integration guide to use the services provided by RefácilPay.</p>\n</li>\n</ol>\n<p><strong>Store registration</strong></p>\n<p>To complete this step, it is necessary to build a URL with certain input parameters that will allow the linking of the eCommerce with RefácilPay. The URL structure must follow the following format:</p>\n<blockquote>\n<p><a href=\"https://autoregistro.refacilpay.co/?comm=1&amp;storeid=1234&amp;returnurl=https://webhok-de-envio-token&amp;nameintegration=NombreECommerce\">https://autoregistro.refacilpay.co/?comm=1&amp;storeid=1234&amp;returnurl=https://webhok-de-envio-token&amp;nameintegration=NombreECommerce</a> </p>\n</blockquote>\n<p>Test enviroment:</p>\n<blockquote>\n<p><a href=\"https://autoregistro.qa.refacilpay.co/?comm=1&amp;storeid=1234&amp;returnurl=https://webhok-de-envio-token&amp;nameintegration=NombreECommerce\">https://autoregistro.qa.refacilpay.co/?comm=1&amp;storeid=1234&amp;returnurl=https://webhok-de-envio-token&amp;nameintegration=NombreECommerce</a> </p>\n</blockquote>\n<p>URL parameters</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>comm</code></td>\n<td>number</td>\n<td>Unique identifier of the eCommerce (This ID must be requested to the RefacilPay team).</td>\n</tr>\n<tr>\n<td><code>storeid</code></td>\n<td>string</td>\n<td>Unique identifier of the store associated with the user being integrated.</td>\n</tr>\n<tr>\n<td><code>returnurl</code></td>\n<td>string</td>\n<td>URL to which the notification of the authentication token for the store will be sent. This token will allow the necessary requests to be made to consume the API services.</td>\n</tr>\n<tr>\n<td><code>nameintegration</code></td>\n<td>string</td>\n<td>Name of eCommerce.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Once the URL has been generated with the necessary parameters, the URL must be entered in the search bar of a browser. This will initiate the eCommerce self-registration process to obtain a user. During this process, the necessary data will be configured and the access credentials to the platform will be obtained.</p>\n<p><strong>Obtain API consumption token</strong></p>\n<p>After completing the self-registration, the data provided will be validated and verified to confirm the identity of the registration. Once this validation process has been completed and the identity has been successfully verified, an email will be sent informing about the successful integration and the token will be sent to the URL specified in the <code>returnurl</code> parameter.</p>\n<p>The token will be sent by means of a HTTPS POST request with the following format:</p>\n<p><code>POST</code> <code>{{returnurl}}</code></p>\n<p><strong>Headers</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Value</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Content-Type</td>\n<td><code>application/json</code></td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Fields (Body)</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>token</code></td>\n<td>string</td>\n<td>Token without expiration to consume API services.</td>\n</tr>\n<tr>\n<td><code>storeId</code></td>\n<td>string</td>\n<td>Unique identifier of the integrated store associated with the user, provided in the parameters of the registration URL.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Request</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"token\": \"MTY4ODQ5NzUyMTk4MSQyYiQxMCRsWlhiU2lkRE0vczdYTkJBcWpENVhPZHhiUGIyVXR3akE5U2RFbjJJRGNPTVQ3TkMvcGRiSw==\",\n  \"storeId\": \"12345\",\n}\n\n</code></pre>\n<p><strong>API Consumption</strong></p>\n<p>Once the self-registration is completed and the token is obtained, you will be able to use the services provided by the API. To generate a payment resource, follow the flow below:</p>\n<ul>\n<li><p>Obtain Transactional Token</p>\n</li>\n<li><p>Generate resource with Payment Link</p>\n</li>\n</ul>\n<blockquote>\n<p>For resources generated from the eCommerce integration, the following data must be included in the reference2 field: </p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Commerce</code></td>\n<td>object</td>\n<td>Object containing the eCommerce integration data.</td>\n</tr>\n</tbody>\n</table>\n</div><p>Within the <code>Commerce</code> object, the data corresponding to the eCommerce ID provided by RefacilPay and the store ID must be included.</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Name</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>origin</code></td>\n<td>number</td>\n<td>Unique identifier of the eCommerce (ID provided by the RefácilPay team for the registration process).</td>\n</tr>\n<tr>\n<td><code>storeId</code></td>\n<td>string</td>\n<td>Unique identifier of the integrated store associated to the registered user.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Example</strong></p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"expiresIn\": 0,\n  \"amount\": 18000,\n  \"brandId\": 61,\n  \"webhookUrl\": \"https://****gerstg.azure-api.net/SkCo.PagosEnLinea.API/payonline/PostStatus\",\n  \"returnUrl\": \"https://www.google.com/\",\n  \"showSummary\": true,\n  \"reference1\": \"CGOOsiYQspMpgDD\",\n  \"reference2\": {\n    \"Label\": {\n      \"Name\": \"Juanita Perez\",\n      \"Email\": \"pqacLO87V77DgF62P8PXENA==do\",\n      \"CellPhone\": \"1VM6daPPJcXCD4Cw93272oQ==8\",\n      \"PersonType\": \"N\",\n      \"DocumentType\": \"C\",\n      \"DocumentNumber\": 79706920\n    },\n    \"Commerce\": {\n      \"origin\": 1,\n      \"storeId\": \"12345\"\n    }\n  }\n}\n\n</code></pre>\n<ul>\n<li>Once the payment resource have been generated or consumed, information on the status of the payment can be consulted.</li>\n</ul>\n","_postman_id":"6fa53852-900a-48b3-a650-0d31a25590ee"},{"name":"Merchant Enrollment","item":[{"name":"Enrollment data retrieval","id":"a192bb3d-efb5-4fec-85b1-2030d7a8facf","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNamePayApi}}/merchant/enrollment-data","description":"<p>This endpoint retrieves the merchant's enrollment details after the enrollment process has been completed. It provides necessary information to use the QR interoperable payment method.</p>\n","urlObject":{"protocol":"{{protocol}}","path":["merchant","enrollment-data"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"29eba2dc-e2fa-4a29-9ec2-94bc459f8ea0","name":"approved","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"https://pay-api.qa.refacil.co/merchant/enrollment-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 14 Mar 2025 19:16:15 GMT"},{"key":"Content-Type","value":"application/json; charset=utf-8"},{"key":"Content-Length","value":"169"},{"key":"Connection","value":"keep-alive"},{"key":"X-Powered-By","value":"Express"},{"key":"ETag","value":"W/\"a9-QRf+dAkA4/vdKTNCJdSnX6n5kS8\""}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Éxito\",\n  \"data\": {\n    \"status\": \"approved\",\n    \"isEnrolled\": true,\n    \"cellphone\": \"3888000003\",\n    \"merchantId\": \"936641111\",\n    \"documentNumber\": \"1000100100\",\n    \"company\": \"FELIPE LONDOÑO\"\n  }\n}\n"},{"id":"d2cef3d4-1b29-4746-95cc-7286221a1424","name":"rejected","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"https://pay-api.qa.refacil.co/merchant/enrollment-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": \"03\",\r\n  \"message\": \"Comercio rechazado en el proceso de enrolamiento\",\r\n  \"data\": {\r\n    \"status\": \"rejected\",\r\n    \"isEnrolled\": false,\r\n    \"cellphone\": \"3888000003\",\r\n    \"merchantId\": null,\r\n    \"documentNumber\": null,\r\n    \"company\": null\r\n  }\r\n}\r\n"},{"id":"91238ef9-1665-41e1-8cae-364cd3525146","name":"not_started","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"https://pay-api.qa.refacil.co/merchant/enrollment-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": \"03\",\r\n  \"message\": \"No se ha iniciado el proceso de enrolamiento para el comercio\",\r\n  \"data\": {\r\n    \"status\": \"not_started\",\r\n    \"isEnrolled\": false,\r\n    \"cellphone\": null,\r\n    \"merchantId\": null,\r\n    \"documentNumber\": null,\r\n    \"company\": null\r\n  }\r\n}"},{"id":"494c973d-6378-40d2-8015-ab909e1bbe34","name":"enrolled_other","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"https://pay-api.qa.refacil.co/merchant/enrollment-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": \"03\",\r\n  \"message\": \"Comercio enrolado en otra entidad\",\r\n  \"data\": {\r\n    \"status\": \"enrolled_other\",\r\n    \"isEnrolled\": false,\r\n    \"cellphone\": null,\r\n    \"merchantId\": null,\r\n    \"documentNumber\": null,\r\n    \"company\": null\r\n  }\r\n}"},{"id":"11e97d1f-6da5-4ece-bfb0-57ac0c44b7c5","name":"pending","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"https://pay-api.qa.refacil.co/merchant/enrollment-data"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": \"03\",\r\n  \"message\": \"Comercio pendiente de aprobación para finalizar el enrolamiento\",\r\n  \"data\": {\r\n    \"status\": \"pending\",\r\n    \"isEnrolled\": false,\r\n    \"cellphone\": null,\r\n    \"merchantId\": null,\r\n    \"documentNumber\": null,\r\n    \"company\": null\r\n  }\r\n}\r\n"}],"_postman_id":"a192bb3d-efb5-4fec-85b1-2030d7a8facf"}],"id":"ee5d64d2-5702-41c3-9469-69bee7c8d7e3","description":"<p>This service allows merchants to retrieve enrollment data for the use of the QR interoperable payment method and key creation.</p>\n<p>To use the service, an authentication token is required and must be sent as an <code>Authorization</code> header.</p>\n<hr />\n<h3 id=\"enrollment-process\"><strong>Enrollment Process</strong></h3>\n<ol>\n<li><p><strong>Retrieve Enrollment Data</strong></p>\n<ul>\n<li>Retrieves the merchant’s enrollment information once the process is completed.</li>\n</ul>\n</li>\n</ol>\n<hr />\n<h3 id=\"merchant-enrollment-statuses\"><strong>Merchant Enrollment Statuses</strong></h3>\n<ul>\n<li><p><strong><code>approved</code></strong></p>\n<p>  The merchant has been approved and is authorized to generate QR codes.</p>\n</li>\n<li><p><strong><code>enrolled_other</code></strong></p>\n<p>  The merchant is already enrolled with another entity. To proceed:</p>\n<ul>\n<li><p>Contact the commercial representative and request unenrollment from the current entity.</p>\n</li>\n<li><p>Submit a letter signed by the legal representative.</p>\n</li>\n<li><p>Be aware that this process may take up to <strong>5 business days</strong>.</p>\n<p>  The commercial representative will provide guidance throughout the process.</p>\n</li>\n</ul>\n</li>\n<li><p><strong><code>rejected</code></strong></p>\n<p>  The merchant has been rejected. Please contact your commercial representative for further details.</p>\n</li>\n<li><p><strong><code>pending</code></strong></p>\n<p>  The enrollment is in progress. The query may take a few minutes. If a final status is not received shortly, contact <strong>RefacilPay support</strong> to verify the situation.</p>\n</li>\n<li><p><strong><code>not_started</code></strong></p>\n<p>  No enrollment process has been initiated for the requested merchant.</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"important-note-on-the-cellphone-field-in-the-enrollment-process\"><strong>Important Note on the \"cellphone\" Field in the Enrollment Process</strong></h3>\n<p>During the merchant creation flow for the QR Interoperable product, the API retrieves the merchant's registered information from the system. However, for the <strong>\"cellphone number\"</strong> field, the <strong>Refacil</strong> system automatically replaces the merchant’s actual phone number with a <strong>generic alias number</strong>.</p>\n<p>This behavior follows technical and operational requirements from the provider, as the real phone number may already exist in the provider’s databases, potentially causing integration conflicts.</p>\n<p>To avoid these issues, a randomly generated alias is used as a placeholder. This alias is <strong>exclusive to this product</strong> and does <strong>not affect</strong> the merchant’s operation in other services.</p>\n","_postman_id":"ee5d64d2-5702-41c3-9469-69bee7c8d7e3"},{"name":"Webhook Backup Management","item":[{"name":"List user webhooks","id":"435b0dcb-8967-4b43-890e-018e61a94e64","request":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{protocol}}://{{serverNamePayApi}}/user-webhooks","description":"<hr />\n<h3 id=\"description\">Description</h3>\n<p>Returns the <strong>backup webhooks</strong> configured for the <strong>authenticated user</strong>. The user is identified by the Bearer token (header <code>Authorization</code>). The response lists all webhooks for that user with their type (e.g. Saldo, Dispersión), URL and active/inactive status.</p>\n<hr />\n<h3 id=\"what-it-is-for\">What it is for</h3>\n<ul>\n<li><p>Query which backup webhook URLs the authenticated client has configured.</p>\n</li>\n<li><p>See the status (active/inactive) of each webhook.</p>\n</li>\n<li><p>List available webhook types (Saldo, Dispersión).</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"request\">Request</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Location</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Authorization</code></td>\n<td>header</td>\n<td>string</td>\n<td>Yes</td>\n<td>Bearer token. The user is inferred from this token.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><p><strong>statusCode</strong> (string): Operation status code. <code>00</code> = success.</p>\n</li>\n<li><p><strong>message</strong> (string): Descriptive message (e.g. \"Operación exitosa.\").</p>\n</li>\n<li><p><strong>data</strong> (array): List of webhooks, each with: <code>id</code>, <code>userId</code>, <code>webhookTypeId</code>, <code>typeName</code>, <code>url</code>, <code>active</code>, <code>createdAt</code>, <code>updatedAt</code>.</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"example-success-200-ok\">Example: Success (200 OK)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>GET {{protocol}}://{{serverNamePayApi}}/user-webhooks\nAuthorization: Bearer {{tokenLogin}}\n\n</code></pre><p>Response body:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": [\n    {\n      \"id\": 1,\n      \"userId\": 12345,\n      \"webhookTypeId\": 1,\n      \"typeName\": \"Saldo\",\n      \"url\": \"https://my-server.com/webhooks/saldo\",\n      \"active\": true,\n      \"createdAt\": \"2025-01-15T10:00:00.000Z\",\n      \"updatedAt\": \"2025-01-15T10:00:00.000Z\"\n    },\n    {\n      \"id\": 2,\n      \"userId\": 12345,\n      \"webhookTypeId\": 2,\n      \"typeName\": \"Dispersión\",\n      \"url\": \"https://my-server.com/webhooks/dispersion\",\n      \"active\": false,\n      \"createdAt\": \"2025-01-14T08:30:00.000Z\",\n      \"updatedAt\": \"2025-01-16T14:20:00.000Z\"\n    }\n  ]\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-empty-list-200-ok\">Example: Empty list (200 OK)</h3>\n<p>When the user has no webhooks configured, <code>data</code> is an empty array:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": []\n}\n\n</code></pre>\n","urlObject":{"protocol":"{{protocol}}","path":["user-webhooks"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"6de7d180-4d7f-4da8-883f-70e9ec986dc5","name":"200 OK - With webhooks","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{serverNamePayApi}}/user-webhooks"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": [\n    {\n      \"id\": 1,\n      \"userId\": 12345,\n      \"webhookTypeId\": 1,\n      \"typeName\": \"Saldo\",\n      \"url\": \"https://my-server.com/webhooks/saldo\",\n      \"active\": true,\n      \"createdAt\": \"2025-01-15T10:00:00.000Z\",\n      \"updatedAt\": \"2025-01-15T10:00:00.000Z\"\n    }\n  ]\n}\n"},{"id":"b4738a49-f1c7-48b4-a4e0-4fd96c9a957d","name":"200 OK - Empty list","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"}],"url":"{{serverNamePayApi}}/user-webhooks"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": []\n}\n"}],"_postman_id":"435b0dcb-8967-4b43-890e-018e61a94e64"},{"name":"Create user webhook","id":"e7bd9647-3b27-423e-bcb0-5702116c292e","request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhookTypeId\": 2,\n  \"url\": \"https://my-server.com/webhooks/dispersion\"\n}"},"url":"{{protocol}}://{{serverNamePayApi}}/user-webhooks","description":"<hr />\n<h3 id=\"description\">Description</h3>\n<p>Creates a <strong>backup webhook</strong> for a user and webhook type. When a new webhook is created, only this webhook remains active for that user and type; others of the same type are deactivated.</p>\n<hr />\n<h3 id=\"what-it-is-for\">What it is for</h3>\n<ul>\n<li>Configure the URL to which RefacilPay will send backup notifications when the resource has no <code>webhookRequest</code>.</li>\n</ul>\n<hr />\n<h3 id=\"request\">Request</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Location</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>Authorization</code></td>\n<td>header</td>\n<td>string</td>\n<td>Yes</td>\n<td>Bearer token. The user is inferred from this token; do not send <code>userId</code> in the body.</td>\n</tr>\n<tr>\n<td><code>webhookTypeId</code></td>\n<td>body</td>\n<td>number</td>\n<td>Yes</td>\n<td>Webhook type ID. <strong>Allowed values:</strong> <strong>1</strong> = Saldo (cash-in backup), <strong>2</strong> = Dispersión (cash-out/dispersion backup).</td>\n</tr>\n<tr>\n<td><code>url</code></td>\n<td>body</td>\n<td>string</td>\n<td>Yes</td>\n<td>Valid URL that will receive notifications (HTTPS recommended).</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"possible-values-for-webhooktypeid\">Possible values for <code>webhookTypeId</code></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Value</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><strong>1</strong></td>\n<td>Saldo (cash-in backup notifications)</td>\n</tr>\n<tr>\n<td><strong>2</strong></td>\n<td>Dispersión (cash-out / dispersion backup notifications)</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"example-success-200-ok\">Example: Success (200 OK)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>POST {{protocol}}://{{serverNamePayApi}}/user-webhooks\nAuthorization: Bearer {{tokenLogin}}\nContent-Type: application/json\n{\n  \"webhookTypeId\": 2,\n  \"url\": \"https://my-server.com/webhooks/dispersion\"\n}\n\n</code></pre><p>The user is inferred from the Bearer token; do not send <code>userId</code> in the body.</p>\n<p>Response body:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": {\n    \"id\": 3,\n    \"userId\": 12345,\n    \"webhookTypeId\": 2,\n    \"url\": \"https://my-server.com/webhooks/dispersion\",\n    \"active\": true,\n    \"createdAt\": \"2025-01-16T12:00:00.000Z\",\n    \"updatedAt\": \"2025-01-16T12:00:00.000Z\"\n  }\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-webhook-type-not-found-404-not-found\">Example: Webhook type not found (404 Not Found)</h3>\n<p>When <code>webhookTypeId</code> is not an allowed value (only <strong>1</strong> and <strong>2</strong> are valid), the API returns:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": 404,\n  \"message\": \"Webhook type not found: 99\",\n  \"error\": \"Not Found\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-validation-error-400-bad-request\">Example: Validation error (400 Bad Request)</h3>\n<p>When the request body is invalid (e.g. missing required fields, invalid URL format), the API returns validation errors:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": 400,\n  \"message\": [\n    \"url must be a URL address\",\n    \"url must be a URL address\"\n  ],\n  \"error\": \"Bad Request\"\n}\n\n</code></pre>\n","urlObject":{"protocol":"{{protocol}}","path":["user-webhooks"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[]}},"response":[{"id":"683931c1-8017-4a52-a504-3563b4f11225","name":"200 OK - Webhook created","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhookTypeId\": 2,\n  \"url\": \"https://my-server.com/webhooks/dispersion\"\n}"},"url":"{{serverNamePayApi}}/user-webhooks"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": {\n    \"id\": 3,\n    \"userId\": 12345,\n    \"webhookTypeId\": 2,\n    \"url\": \"https://my-server.com/webhooks/dispersion\",\n    \"active\": true,\n    \"createdAt\": \"2025-01-16T12:00:00.000Z\",\n    \"updatedAt\": \"2025-01-16T12:00:00.000Z\"\n  }\n}\n"},{"id":"f158da8d-843a-4ec1-b956-0264f1e633c0","name":"404 Not Found - Webhook type not found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhookTypeId\": 99,\n  \"url\": \"https://my-server.com/webhooks/backup\"\n}"},"url":"{{serverNamePayApi}}/user-webhooks"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 404,\n  \"message\": \"Webhook type not found: 99\",\n  \"error\": \"Not Found\"\n}\n"},{"id":"30ffaadf-da2c-46d0-9d3e-17dd2b441ea6","name":"400 Bad Request - Validation error","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"webhookTypeId\": 1,\n  \"url\": \"not-a-valid-url\"\n}"},"url":"{{serverNamePayApi}}/user-webhooks"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 400,\n  \"message\": [\n    \"url must be a URL address\",\n    \"userId must be an integer number\"\n  ],\n  \"error\": \"Bad Request\"\n}\n"}],"_postman_id":"e7bd9647-3b27-423e-bcb0-5702116c292e"},{"name":"Update webhook status","id":"78f0a3ea-8206-4667-9b18-0168233788ee","request":{"method":"PATCH","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"active\": true\n}"},"url":"{{protocol}}://{{serverNamePayApi}}/user-webhooks/:id/status","description":"<hr />\n<h3 id=\"description\">Description</h3>\n<p>Updates the <strong>active/inactive status</strong> of a backup webhook <strong>owned by the authenticated user</strong>. The user is identified by the Bearer token; you can only update webhooks that belong to that user. If a webhook is activated, other webhooks for the same user and type are deactivated (only one active per type per user).</p>\n<hr />\n<h3 id=\"what-it-is-for\">What it is for</h3>\n<ul>\n<li><p>Activate or deactivate a backup webhook URL without deleting it.</p>\n</li>\n<li><p>Switch which URL receives notifications when multiple are configured (activating one deactivates others of the same type).</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"request\">Request</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Parameter</th>\n<th>Location</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>path</td>\n<td>number</td>\n<td>Yes</td>\n<td>Webhook identifier to update (must belong to the authenticated user).</td>\n</tr>\n<tr>\n<td><code>Authorization</code></td>\n<td>header</td>\n<td>string</td>\n<td>Yes</td>\n<td>Bearer token. The user is inferred from this token.</td>\n</tr>\n<tr>\n<td><code>active</code></td>\n<td>body</td>\n<td>boolean</td>\n<td>Yes</td>\n<td><code>true</code> to activate, <code>false</code> to deactivate.</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"example-success-200-ok\">Example: Success (200 OK)</h3>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code>PATCH {{protocol}}://{{serverNamePayApi}}/user-webhooks/1/status\nAuthorization: Bearer {{tokenLogin}}\nContent-Type: application/json\n{\n  \"active\": true\n}\n\n</code></pre><p>Response body:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": {\n    \"id\": 1,\n    \"userId\": 12345,\n    \"webhookTypeId\": 1,\n    \"url\": \"https://my-server.com/webhooks/saldo\",\n    \"active\": true,\n    \"createdAt\": \"2025-01-15T10:00:00.000Z\",\n    \"updatedAt\": \"2025-01-16T15:30:00.000Z\"\n  }\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-user-webhook-not-found-404-not-found\">Example: User webhook not found (404 Not Found)</h3>\n<p>When no webhook exists with the given <code>id</code>, the API returns:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": 404,\n  \"message\": \"User webhook not found: 999\",\n  \"error\": \"Not Found\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-forbidden-403-forbidden\">Example: Forbidden (403 Forbidden)</h3>\n<p>When the webhook does not belong to the authenticated user, the API returns:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": 403,\n  \"message\": \"Webhook does not belong to the authenticated user\",\n  \"error\": \"Forbidden\"\n}\n\n</code></pre>\n<hr />\n<h3 id=\"example-validation-error-400-bad-request\">Example: Validation error (400 Bad Request)</h3>\n<p>When <code>id</code> is not a valid number or body is invalid:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-json\">{\n  \"statusCode\": 400,\n  \"message\": \"Validation failed (numeric string is expected)\",\n  \"error\": \"Bad Request\"\n}\n\n</code></pre>\n","urlObject":{"protocol":"{{protocol}}","path":["user-webhooks",":id","status"],"host":["{{serverNamePayApi}}"],"query":[],"variable":[{"description":{"content":"<p>Webhook identifier</p>\n","type":"text/plain"},"type":"any","value":"1","key":"id"}]}},"response":[{"id":"4b3a0bb9-f0a7-4612-99e9-14b6f4a0b2e3","name":"200 OK - Status updated","originalRequest":{"method":"PATCH","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"active\": true\n}"},"url":"{{serverNamePayApi}}/user-webhooks/1/status"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": \"00\",\n  \"message\": \"Operación exitosa.\",\n  \"data\": {\n    \"id\": 1,\n    \"userId\": 12345,\n    \"webhookTypeId\": 1,\n    \"url\": \"https://my-server.com/webhooks/saldo\",\n    \"active\": true,\n    \"createdAt\": \"2025-01-15T10:00:00.000Z\",\n    \"updatedAt\": \"2025-01-16T15:30:00.000Z\"\n  }\n}\n"},{"id":"16a06204-75b6-4372-8f75-fe0665b5b8f4","name":"404 Not Found - User webhook not found","originalRequest":{"method":"PATCH","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"active\": true\n}"},"url":"{{serverNamePayApi}}/user-webhooks/999/status"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 404,\n  \"message\": \"User webhook not found: 999\",\n  \"error\": \"Not Found\"\n}\n"},{"id":"29e62e83-eaa7-47c7-a6cd-dde306bb1709","name":"400 Bad Request - Invalid id","originalRequest":{"method":"PATCH","header":[{"key":"Authorization","value":"Bearer {{tokenLogin}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\n  \"active\": true\n}"},"url":"{{serverNamePayApi}}/user-webhooks/abc/status"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json; charset=utf-8"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 400,\n  \"message\": \"Validation failed (numeric string is expected)\",\n  \"error\": \"Bad Request\"\n}\n"}],"_postman_id":"78f0a3ea-8206-4667-9b18-0168233788ee"}],"id":"d8acc75b-e1da-48a8-aa11-c2effd916196","description":"<p>Service to <strong>configure backup webhooks per client</strong>. It allows listing, creating and activating/deactivating URLs to which RefacilPay will send notifications when the payment resource has no webhook configured (e.g. for Saldo or Dispersión).</p>\n<hr />\n<h3 id=\"endpoints\">Endpoints</h3>\n<ol>\n<li><p><strong>List user webhooks</strong> (GET) – Returns the backup webhooks configured for the <strong>authenticated user</strong> (user inferred from Bearer token).</p>\n</li>\n<li><p><strong>Create user webhook</strong> (POST) – Creates a backup webhook for the <strong>authenticated user</strong> and type (Saldo or Dispersión).</p>\n</li>\n<li><p><strong>Update webhook status</strong> (PATCH) – Activates or deactivates a backup webhook <strong>owned by the authenticated user</strong>.</p>\n</li>\n</ol>\n<p>All endpoints require Bearer token authentication (<code>Authorization: Bearer {{tokenLogin}}</code>). The user is always inferred from the token for security.</p>\n","_postman_id":"d8acc75b-e1da-48a8-aa11-c2effd916196"}],"id":"bffa2c0d-6d0c-48c4-99ee-e5ff28440e77","description":"<p>Welcome to Refácil Pay in this space you will find all the information to make a successful connection and all the operational processes that we offer.</p>\n<img src=\"https://content.pstmn.io/d2c9fab1-0bbf-40ea-9022-6cc52b24dbb3/aW1hZ2UucG5n\" width=\"214\" height=\"104\" />\n\n<blockquote>\n<p>You will be able to target the consumption of our services through our following Endpoint :<br />QA: <a href=\"https://pay-api.qa.refacil.co/\">https://pay-api.qa.refacil.co/</a><br />Producción: <a href=\"https://pay-api.refacil.co/\">https://pay-api.refacil.co/</a> </p>\n</blockquote>\n<blockquote>\n<p>Note: It should be noted that for each environment only the beginning of the Url is modified, the subsequent address is the same for both environments in the services that you will consume. </p>\n</blockquote>\n<blockquote>\n<p>API implementation credentials in test environment will be available throughout the integration and up to 30 days after certification in production.</p>\n</blockquote>\n","_postman_id":"bffa2c0d-6d0c-48c4-99ee-e5ff28440e77"},{"name":"Collection API","item":[{"name":"Authorization","item":[{"name":"Generate JWT Authorization Token","id":"88e32697-0418-41b0-8cb6-f57b7de5c2f0","request":{"method":"GET","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"}],"url":"https://collection-api.qa.refacil.co/auth/jwt","description":"<p>This endpoint allows third-party clients to generate a temporary <strong>JWT Bearer token</strong> using their assigned Secret ID.  </p>\n<p>The token is required to authenticate and access protected endpoints in the Collection API.</p>\n<ul>\n<li><p>The token is valid for <strong>60 minutes</strong>.</p>\n</li>\n<li><p>You must include the <code>x-secret-id</code> header to request it.</p>\n</li>\n</ul>\n","urlObject":{"protocol":"https","path":["auth","jwt"],"host":["collection-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"56317cec-2aea-48e5-8b14-1f46252800a6","name":"Success","originalRequest":{"method":"GET","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"}],"url":"https://collection-api.qa.refacil.co/auth/jwt"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 200,\n  \"message\": \"JWT generated successfully\",\n  \"date\": 1751981219096,\n  \"payload\": {\n    \"header\": \"Authorization\",\n    \"tokenType\": \"Bearer\",\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE5ODEyMjAsImV4cCI6MTc1MTk4NDgyMH0.EFsYkq4WU43ygVahsXVYkpZI6O-VOU9XRaXUthk9rePxyCWtPn6Cx3fhJUURqQ6dxGXRsstz22tJaso2it-axqaQNNl9jnnw35h1TL6ZWF6o3ttCLbKmrSGgZDctzvMdGgX-KHDjiM_TVK-oMm--DBEXbn4MHQD1tFzC3onvf0dMPKOjvcN83glyGM9ktNic1ANQwoEMP7zFCcFNHmnwmnOObwkd8AVr0HqijVRzo3m3GOEVdQPiEVX3bYZKNeytPBwehntgx8bn3PGlQNok4X9_s8sdZVrQpSp8SekYbJDBeQv5O9NCMVbsQpmoneB-pd3d8X0D6LXwt_57hk6oLw\",\n    \"expiresAt\": \"2025-07-08T09:27:00.147-05:00\"\n  }\n}"},{"id":"6cfe2ab4-be2b-4d10-a0e6-62ee5fd97355","name":"Failed","originalRequest":{"method":"GET","header":[],"url":"https://collection-api.qa.refacil.co/auth/jwt"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 400,\n  \"errorCode\": \"server.error\",\n  \"message\": \"x-secret-id header is required\",\n  \"path\": \"/auth/jwt\",\n  \"date\": 1751898147822\n}\n"}],"_postman_id":"88e32697-0418-41b0-8cb6-f57b7de5c2f0"},{"name":"Generate One-Time Token (OTT)","id":"55575e20-2d54-46ef-ad6b-1cd49c230e97","request":{"method":"POST","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/collection/submit-payment\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/auth/one-time-token","description":"<p>This endpoint generates a <strong>single-use token</strong> that provides an extra layer of security for sensitive operations.</p>\n<ul>\n<li><p>The token is valid for <strong>60 seconds</strong> and can only be used <strong>once</strong>.</p>\n</li>\n<li><p>You must include both <code>x-secret-id</code> and <code>Authorization: Bearer</code> headers to request it.</p>\n</li>\n</ul>\n<h3 id=\"🔐-endpoints-that-require-one-time-token\">🔐 <strong>Endpoints that require One-Time Token</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>HTTP Method</th>\n<th>Endpoint URL</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>POST</code></td>\n<td><code>/collection/submit-payment</code></td>\n<td>Registers a payment or top-up at a branch</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["auth","one-time-token"],"host":["collection-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"04a462ee-39cd-42a4-af08-dab0dc6eb8b2","name":"Success","originalRequest":{"method":"POST","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/collection/submit-payment\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/auth/one-time-token"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 200,\n  \"message\": \"One time token generated successfully\",\n  \"date\": 1751904903852,\n  \"payload\": {\n    \"header\": \"x-one-time-token\",\n    \"token\": \"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828\",\n    \"expiresAt\": \"2025-07-07T11:16:05.247-05:00\"\n  }\n}\n"},{"id":"749f64d4-1654-4e25-8a43-3df006783e2d","name":"Service not found","originalRequest":{"method":"POST","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/collection/service-not-found\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/auth/one-time-token"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 400,\r\n  \"errorCode\": \"server.error\",\r\n  \"message\": \"service not found in catalog\",\r\n  \"path\": \"/auth/one-time-token\",\r\n  \"date\": 1751905006521\r\n}\r\n"},{"id":"cf58507b-d68b-46a9-bfdc-55dfd01c9aeb","name":"Authorization token expired","originalRequest":{"method":"POST","header":[{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"service\": \"/collection/submit-payment\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/auth/one-time-token"},"status":"Forbidden","code":403,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 403,\r\n  \"errorCode\": \"server.error\",\r\n  \"message\": \"JWT has expired\",\r\n  \"path\": \"/auth/one-time-token\",\r\n  \"date\": 1751904868843\r\n}\r\n"}],"_postman_id":"55575e20-2d54-46ef-ad6b-1cd49c230e97"}],"id":"8b780292-7274-40cf-932d-a2a21c3f2247","description":"<h2 id=\"📌-overview\">📌 Overview</h2>\n<p>To use the <strong>Collection API</strong>, clients must follow a two-step authentication process:</p>\n<ol>\n<li><p>Generate a <strong>JWT (Bearer Token)</strong> using their <strong>Secret ID</strong></p>\n</li>\n<li><p>(Optional) Generate a <strong>One-Time Token (OTT)</strong> for secure access to specific endpoints</p>\n</li>\n</ol>\n<p>Each request must include the correct headers. Tokens have time-based expiration.</p>\n","_postman_id":"8b780292-7274-40cf-932d-a2a21c3f2247"},{"name":"Payments","item":[{"name":"Submit Payment","event":[{"listen":"test","script":{"exec":["// Test para todas las posibles respuestas","pm.test(\"Status code is handled\", function () {","    pm.expect(pm.response.code).to.be.oneOf([200, 400]);","});","","// Test para respuesta exitosa","pm.test(\"Successful transaction\", function () {","    if (pm.response.code === 200) {","        pm.expect(pm.response.text()).to.equal(\"0\");","    }","});","","// Test para todos los casos de error","pm.test(\"Error responses\", function () {","    if (pm.response.code === 400) {","        pm.expect(pm.response.text()).to.be.oneOf([","            '(\"201\", \"\", \"Campos malformados\")',","            '(\"103\", \"\", \"Valor incorrecto\")',","            '(\"101\", \"\", \"Cliente no encontrada\")',","            '(\"203\", \"\", \"Empresa no encontrada\")',","            '(\"901\", \"\", \"Error desconocido\")'","        ]);","    }","});"],"type":"text/javascript","packages":{}}}],"id":"91a8401b-5bf9-42e7-9342-77691085efc4","request":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 100863,\n    \"agreementId\": 2,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment","description":"<h2 id=\"description\">Description</h2>\n<p>This endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.</p>\n<h3 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>reference</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>The reference for the transaction. Min. 1 character, max. 50 characters.</td>\n</tr>\n<tr>\n<td><code>agreementId</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>ID of the agreement (company) that is making the payment</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>Integer</td>\n<td>✅</td>\n<td>Amount to be charged, in COP (Colombian Pesos)</td>\n</tr>\n<tr>\n<td><code>date</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Transaction date in format <code>YYYY-MM-DD</code></td>\n</tr>\n<tr>\n<td><code>time</code></td>\n<td>String</td>\n<td>✅</td>\n<td>Transaction time in format <code>HH:mm</code> (24-hour clock, Bogotá time zone)</td>\n</tr>\n<tr>\n<td><code>ip</code></td>\n<td>String</td>\n<td>✅</td>\n<td>IP address of the client</td>\n</tr>\n</tbody>\n</table>\n</div><hr />\n<h3 id=\"🏢-available-agreements\">🏢 Available Agreements</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><code>agreementId</code></th>\n<th>Company Name</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>18252</code></td>\n<td>Apostar</td>\n</tr>\n<tr>\n<td><code>18253</code></td>\n<td>Susuerte</td>\n</tr>\n</tbody>\n</table>\n</div><p>⚠️ Only the above <code>agreementId</code>s are currently authorized to use this service.</p>\n<hr />\n","urlObject":{"protocol":"https","path":["collection","submit-payment"],"host":["collection-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"7aba8c89-a4fc-4823-8553-e5fed7514193","name":"Success","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 101162,\n    \"agreementId\": 18252,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"status":"Created","code":201,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 200,\n    \"message\": \"Exitoso\",\n    \"date\": 1766764930070,\n    \"payload\": {\n        \"transaction\": {\n            \"transactionId\": \"6227759\",\n            \"providerRequestId\": 362078,\n            \"cost\": 0\n        },\n        \"agreement\": {\n            \"agreementName\": \"Convenio APOSTAR\",\n            \"amount\": 10000,\n            \"totalAmount\": 10000\n        },\n        \"references\": {\n            \"reference\": \"101162\"\n        }\n    }\n}\n"},{"id":"bfbdcf13-9a3e-4a73-a081-095497b9adf8","name":"Agreement not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 100863,\n    \"agreementId\": 1234,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 404,\r\n  \"errorCode\": \"AGREEMENT_NOT_FOUND\",\r\n  \"message\": \"Agreement not found\",\r\n  \"path\": \"/collection/submit-payment\",\r\n  \"date\": 1751994080869\r\n}\r\n"},{"id":"019f67c7-954c-4c8a-b1a0-cb8e3de693cd","name":"Agreement not associated","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 100863,\n    \"agreementId\": 2,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 404,\r\n  \"errorCode\": \"AGREEMENT_NOT_ASSOCIATED\",\r\n  \"message\": \"Agreement not associated\",\r\n  \"path\": \"/collection/submit-payment\",\r\n  \"date\": 1752076361304\r\n}\r\n"},{"id":"84f208a6-4b45-4e93-8ef2-f24c5cc63392","name":"Reference not found","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 123456,\n    \"agreementId\": 18252,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 404,\r\n  \"errorCode\": \"PROVIDER_NOT_FOUND\",\r\n  \"message\": \"Error PayProcessorAdapter.submitPayment: Referencia no encontrada\",\r\n  \"path\": \"/collection/submit-payment\",\r\n  \"date\": 1751994045501\r\n}\r\n"},{"id":"a5dfc14e-da52-411a-971d-375ff591b7da","name":"Insuficient balance","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 100863,\n    \"agreementId\": 18252,\n    \"amount\": 10000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 400,\n  \"errorCode\": \"INSUFFICIENT_BALANCE\",\n  \"message\": \"Saldo insuficiente\",\n  \"path\": \"/collection/submit-payment\",\n  \"date\": 1752012137036\n}\n"},{"id":"953735b2-a72f-41dd-bee9-f859d8e12e75","name":"Invalid amount","originalRequest":{"method":"POST","header":[{"key":"Content-Type","value":"application/json"},{"key":"x-secret-id","value":"64c0f2660d7b59d35197e5c77a5543c1aaf94c17************","type":"text"},{"key":"Authorization","value":"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w","type":"text"},{"key":"x-one-time-token","value":"741e5c62-758d-4a3f-8ba4-4c2a0e2c0828","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"reference\": 100863,\n    \"agreementId\": 18252,\n    \"amount\": -1000,\n    \"date\": \"2025-03-30\",\n    \"time\": \"01:30\",\n    \"ip\": \"127.0.0.1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/collection/submit-payment"},"status":"Bad Request","code":400,"_postman_previewlanguage":"json","header":[{"key":"Content-Type","value":"application/json","description":"","type":"text"}],"cookie":[],"responseTime":null,"body":"{\r\n  \"statusCode\": 400,\r\n  \"errorCode\": \"server.error\",\r\n  \"message\": \"amount must be a positive number\",\r\n  \"path\": \"/collection/submit-payment\",\r\n  \"date\": 1751994206025\r\n}\r\n"}],"_postman_id":"91a8401b-5bf9-42e7-9342-77691085efc4"}],"id":"682c9929-e0a9-4d38-abad-5806a7882700","_postman_id":"682c9929-e0a9-4d38-abad-5806a7882700","description":""},{"name":"Own Network Collection","item":[{"name":"jwt-validate","event":[{"listen":"prerequest","script":{"exec":[""],"type":"text/javascript","packages":{}}},{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"05d564da-7071-41b3-97ff-72801d8a360e","request":{"method":"POST","header":[{"key":"Authorization","value":"Token {{customer_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"secretId\": \"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de5416cc\",\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQXBvc3RhciIsImN1c3RvbWVySWQiOjIxMTksInVzZXJJZCI6MTAwMzQ0MSwiaWF0IjoxNzU0MDA4MTc5LCJleHAiOjE3NTQwMTE3Nzl9.l7TdMeKfApwJVhs1CM8srG7WOARRagCxg8FRgxrabYw7l8Qk93Re4BzngIc3g5U0zUZtoajBPWCi54D27EI7DpVEp6TmhnodPWc9Ux603DmhqNviYLIQACgtj03K8xEIa4DNqlT0VKFDRDtEBMe4nLaBjYjlS-mpi-IErFxoXoJFL2lelm_H4lPzlCboP-VRP6X0xEJo3gAiaiqy5OHPi53Kq_hPCldQYXnkbLJxHyDVAlqNG5RyG5D6sCggxycfd8U2l0RaXOEDk-WaSYd7RFJreFZooEskS06DkB31zMEVskDuFugkVM7pN0XSwzPkFHjS1UIw8gvMB15-v7I5zQ\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://collection-api.qa.refacil.co/auth/validate","description":"<p>This endpoint allows you to validate a JWT token by sending an HTTP POST request to {{base_url}}/auth/validate.</p>\n<p><strong>Base URL:</strong></p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Enviroment</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>QA</td>\n<td><a href=\"https://collection-api.qa.refacil.co\">https://collection-api.qa.refacil.co</a></td>\n</tr>\n<tr>\n<td>PROD</td>\n<td><a href=\"https://collection-api.refacil.co\">https://collection-api.refacil.co</a></td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>secretId</td>\n<td>string</td>\n<td>✅</td>\n<td>The secret identifier used to validate the token. <strong>This secretId will be shared by us with the client</strong></td>\n</tr>\n<tr>\n<td>token</td>\n<td>string</td>\n<td>✅</td>\n<td>The JWT token to be validated</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"📤-response-body-parameters\">📤 Response body parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>statusCode</td>\n<td>number</td>\n<td>The HTTP status code of the response</td>\n</tr>\n<tr>\n<td>message</td>\n<td>string</td>\n<td>A message indicating the result of the operation</td>\n</tr>\n<tr>\n<td>date</td>\n<td>number</td>\n<td>The timestamp of the response</td>\n</tr>\n<tr>\n<td>payload</td>\n<td>object</td>\n<td>The response payload containing validation results</td>\n</tr>\n<tr>\n<td>payload.valid</td>\n<td>boolean</td>\n<td>Indicates whether the token is valid or not</td>\n</tr>\n<tr>\n<td>payload.message</td>\n<td>string</td>\n<td>A message related to the validation result</td>\n</tr>\n<tr>\n<td>payload.data</td>\n<td>object</td>\n<td>Optional decoded token data if the token is valid</td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["auth","validate"],"host":["collection-api","qa","refacil","co"],"query":[],"variable":[]}},"response":[{"id":"0c6ddbbc-57a8-43dc-b035-c318352f999b","name":"jwt-validate OK","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{customer_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"secretId\": \"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de5416cc\",\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQXBvc3RhciIsImN1c3RvbWVySWQiOjIxMTksInVzZXJJZCI6MTAwMzQ0MSwiaWF0IjoxNzU0MDA4MTc5LCJleHAiOjE3NTQwMTE3Nzl9.l7TdMeKfApwJVhs1CM8srG7WOARRagCxg8FRgxrabYw7l8Qk93Re4BzngIc3g5U0zUZtoajBPWCi54D27EI7DpVEp6TmhnodPWc9Ux603DmhqNviYLIQACgtj03K8xEIa4DNqlT0VKFDRDtEBMe4nLaBjYjlS-mpi-IErFxoXoJFL2lelm_H4lPzlCboP-VRP6X0xEJo3gAiaiqy5OHPi53Kq_hPCldQYXnkbLJxHyDVAlqNG5RyG5D6sCggxycfd8U2l0RaXOEDk-WaSYd7RFJreFZooEskS06DkB31zMEVskDuFugkVM7pN0XSwzPkFHjS1UIw8gvMB15-v7I5zQ\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://ms-security.qa.refacil.co/jwt/validate"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:50:19 GMT"},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"Content-Length","value":"6"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"GET, HEAD, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\n    \"statusCode\": 200,\n    \"message\": \"Successful\",\n    \"date\": 1754008213852,\n    \"payload\": {\n        \"valid\": true,\n        \"message\": \"Token is valid.\",\n        \"data\": {\n            \"name\": \"name_customer\",\n            \"customerId\": 2119,\n            \"userId\": 1003441,\n            \"iat\": 1754008179,\n            \"exp\": 1754011779\n        }\n    }\n}"},{"id":"cbbedc83-530c-45ff-b520-8eec3da3b103","name":"jwt-validate Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{customer_invalid_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"secretId\": \"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de5416cc\",\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQXBvc3RhciIsImN1c3RvbWVySWQiOjIxMTksInVzZXJJZCI6MTAwMzQ0MSwiaWF0IjoxNzU0MDA4MTc5LCJleHAiOjE3NTQwMTE3Nzl9.l7TdMeKfApwJVhs1CM8srG7WOARRagCxg8FRgxrabYw7l8Qk93Re4BzngIc3g5U0zUZtoajBPWCi54D27EI7DpVEp6TmhnodPWc9Ux603DmhqNviYLIQACgtj03K8xEIa4DNqlT0VKFDRDtEBMe4nLaBjYjlS-mpi-IErFxoXoJFL2lelm_H4lPzlCboP-VRP6X0xEJo3gAiaiqy5OHPi53Kq_hPCldQYXnkbLJxHyDVAlqNG5RyG5D6sCggxycfd8U2l0RaXOEDk-WaSYd7RFJreFZooEskS06DkB31zMEVskDuFugkVM7pN0XSwzPkFHjS1UIw8gvMB15-v7I5zQ\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://ms-security.qa.refacil.co/jwt/validate"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:50:19 GMT"},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"Content-Length","value":"6"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"GET, HEAD, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Invalid secretId or third party not active.\",\r\n    \"error\": \"Unauthorized\",\r\n    \"statusCode\": 401\r\n}"},{"id":"50095feb-2eb1-493b-8147-2d84631d396e","name":"jwt-validate Forbidden","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{customer_invalid_token}}","type":"text"},{"key":"Content-Type","value":"application/json","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"secretId\": \"fe4618ed155f863fb60d183e30a9634f90dce6cc725ed9fa31fab633de5416cc\",\r\n    \"token\": \"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiQXBvc3RhciIsImN1c3RvbWVySWQiOjIxMTksInVzZXJJZCI6MTAwMzQ0MSwiaWF0IjoxNzU0MDA4MTc5LCJleHAiOjE3NTQwMTE3Nzl9.l7TdMeKfApwJVhs1CM8srG7WOARRagCxg8FRgxrabYw7l8Qk93Re4BzngIc3g5U0zUZtoajBPWCi54D27EI7DpVEp6TmhnodPWc9Ux603DmhqNviYLIQACgtj03K8xEIa4DNqlT0VKFDRDtEBMe4nLaBjYjlS-mpi-IErFxoXoJFL2lelm_H4lPzlCboP-VRP6X0xEJo3gAiaiqy5OHPi53Kq_hPCldQYXnkbLJxHyDVAlqNG5RyG5D6sCggxycfd8U2l0RaXOEDk-WaSYd7RFJreFZooEskS06DkB31zMEVskDuFugkVM7pN0XSwzPkFHjS1UIw8gvMB15-v7I5zQ\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://ms-security.qa.refacil.co/jwt/validate"},"status":"Forbidden","code":403,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:50:19 GMT"},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"Content-Length","value":"6"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"GET, HEAD, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"message\": \"Invalid token.\",\r\n    \"error\": \"Forbidden\",\r\n    \"statusCode\": 403\r\n}"}],"_postman_id":"05d564da-7071-41b3-97ff-72801d8a360e"},{"name":"ping","event":[{"listen":"prerequest","script":{"exec":[""],"type":"text/javascript","packages":{}}},{"listen":"test","script":{"exec":[""],"type":"text/javascript","packages":{}}}],"id":"a2ece8f9-2da0-4cef-9485-e73e15fa7223","request":{"method":"GET","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"url":"https://{{customer.domain.com}}/ping/","description":"<p>This endpoint sends an HTTP GET request to {{customer.domain.com}}/ping/ in order to check the availability of the server.</p>\n<h3 id=\"benefits-🩺\">Benefits 🩺</h3>\n<ul>\n<li><p><strong>Fail-fast</strong>: detects unavailability before critical operations.</p>\n</li>\n<li><p><strong>SLO-aware</strong>: monitor per-client availability and trigger mitigations.</p>\n</li>\n<li><p><strong>Proactive ops</strong>: enables circuit breakers and routing policies.</p>\n</li>\n</ul>\n<p>The request does not contain a request body.</p>\n<h3 id=\"response\">Response</h3>\n<ul>\n<li><p>Status: 200</p>\n</li>\n<li><p>Body: \"pong\"</p>\n</li>\n</ul>\n<hr />\n<h3 id=\"domain-and-security-requirements\">Domain and Security Requirements</h3>\n<p>To integrate with <strong>Own Network Collection</strong>, all integration endpoint URLs must follow secure domain standards.</p>\n<h4 id=\"1-url-domain-structure-all-endpoints\">1) URL domain structure (all endpoints)</h4>\n<ul>\n<li><p>Must be a fully qualified domain URL, for example: <code>https://api.yourdomain.com/path</code>.</p>\n</li>\n<li><p><code>http://</code>, IP-only endpoints, localhost domains, or self-signed development URLs are not accepted in production onboarding.</p>\n</li>\n<li><p>The domain must be publicly resolvable and reachable from Refacil infrastructure.</p>\n</li>\n</ul>\n<h4 id=\"2-ssltls-mandatory-requirement\">2) SSL/TLS mandatory requirement</h4>\n<ul>\n<li><p>Only <strong>HTTPS</strong> endpoints are accepted.</p>\n</li>\n<li><p>The domain must present a valid SSL/TLS certificate issued by a trusted CA.</p>\n</li>\n<li><p>The certificate must be active (not expired), with a complete certificate chain and valid hostname (CN/SAN match).</p>\n</li>\n<li><p>Requests can be rejected during merchant setup or runtime if certificate validation fails.</p>\n</li>\n</ul>\n<h4 id=\"3-general-api-security-restrictions\">3) General API security restrictions</h4>\n<ul>\n<li><p>Enforce token-based authentication exactly as documented (<code>Authorization</code> header).</p>\n</li>\n<li><p>Validate payload schema, data types, and required fields before processing.</p>\n</li>\n<li><p>Protect endpoints against replay and duplicate processing using idempotency controls where applicable.</p>\n</li>\n<li><p>Do not expose secrets, tokens, or sensitive personal data in logs or error messages.</p>\n</li>\n<li><p>Apply network hardening controls (rate limiting, allowlisting where possible, and TLS 1.2+ minimum).</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Important:</strong> If an endpoint URL does not comply with the secure domain and SSL requirements, merchant enablement and/or notification delivery can fail.</p>\n</blockquote>\n","urlObject":{"protocol":"https","path":["ping",""],"host":["{{customer.domain.com}}"],"query":[],"variable":[]}},"response":[{"id":"5ac86e44-03f3-4a69-9def-b20a68f7070c","name":"ping OK","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"url":"https://{{customer.domain.com}}/ping/"},"status":"OK","code":200,"_postman_previewlanguage":"text","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:50:19 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"6"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"GET, HEAD, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"\"pong\""},{"id":"b87ac126-3fb3-4485-a7fa-835c69c3fe95","name":"ping Unauthorized","originalRequest":{"method":"GET","header":[{"key":"Authorization","value":"Token {{generate_invalid_token}}","type":"text"}],"url":"https://{{customer.domain.com}}/ping/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:50:19 GMT"},{"key":"Content-Type","value":"application/json","description":"","type":"text"},{"key":"Content-Length","value":"6"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"GET, HEAD, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\r\n    \"detail\": \"Invalid token.\"\r\n}"}],"_postman_id":"a2ece8f9-2da0-4cef-9485-e73e15fa7223"},{"name":"queryBill","event":[{"listen":"prerequest","script":{"exec":["var moment = require('moment');\r","var ISO_8601_OFFSET = 'YYYY-MM-DDTHH:mm:ss.SSS';\r","var format_date = 'YYYY-MM-DD';\r","var format_time = 'HH:mm:ss';\r","var momentdate = moment().subtract(1, 'days').format(ISO_8601_OFFSET);\r","\r","var date = moment().format(format_date);\r","var time = moment().format(format_time);\r","\r","pm.environment.set(\"date\", date);\r","pm.environment.set(\"time\", time);\r",""],"type":"text/javascript","packages":{}}}],"id":"20a360ac-60fa-4799-b50b-3899be462b96","request":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"reference\": \"52851385\",\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/queryBill/","description":"<p>This endpoint allows you to query a bill by sending an HTTP POST request to <code>{{customer.domain.com}}/queryBill/</code>.</p>\n<h3 id=\"benefits-🔎\">Benefits 🔎</h3>\n<ul>\n<li><p><strong>Real-time validation</strong>: fresh billing info from the originator.</p>\n</li>\n<li><p><strong>Standard error handling</strong>: predictable codes/messages simplify UX and support.</p>\n</li>\n<li><p><strong>Lower coupling</strong>: each client exposes its endpoint; the bridge resolves routing by agreement.</p>\n</li>\n<li><p><strong>Observability</strong>: traceability via <code>transactionId</code> from query to payment.</p>\n</li>\n<li><p><strong>Multiple payment values</strong>: support for references with multiple payment options via <code>paymentOrder</code>.</p>\n</li>\n</ul>\n<h3 id=\"domain-and-security-requirements\">Domain and Security Requirements</h3>\n<p>To integrate with <strong>Own Network Collection</strong>, all integration endpoint URLs must follow secure domain standards.</p>\n<h4 id=\"1-url-domain-structure-all-endpoints\">1) URL domain structure (all endpoints)</h4>\n<ul>\n<li><p>Must be a fully qualified domain URL, for example: <code>https://api.yourdomain.com/path</code>.</p>\n</li>\n<li><p><code>http://</code>, IP-only endpoints, localhost domains, or self-signed development URLs are not accepted in production onboarding.</p>\n</li>\n<li><p>The domain must be publicly resolvable and reachable from Refacil infrastructure.</p>\n</li>\n</ul>\n<h4 id=\"2-ssltls-mandatory-requirement\">2) SSL/TLS mandatory requirement</h4>\n<ul>\n<li><p>Only <strong>HTTPS</strong> endpoints are accepted.</p>\n</li>\n<li><p>The domain must present a valid SSL/TLS certificate issued by a trusted CA.</p>\n</li>\n<li><p>The certificate must be active (not expired), with a complete certificate chain and valid hostname (CN/SAN match).</p>\n</li>\n<li><p>Requests can be rejected during merchant setup or runtime if certificate validation fails.</p>\n</li>\n</ul>\n<h4 id=\"3-general-api-security-restrictions\">3) General API security restrictions</h4>\n<ul>\n<li><p>Enforce token-based authentication exactly as documented (<code>Authorization</code> header).</p>\n</li>\n<li><p>Validate payload schema, data types, and required fields before processing.</p>\n</li>\n<li><p>Protect endpoints against replay and duplicate processing using idempotency controls where applicable.</p>\n</li>\n<li><p>Do not expose secrets, tokens, or sensitive personal data in logs or error messages.</p>\n</li>\n<li><p>Apply network hardening controls (rate limiting, allowlisting where possible, and TLS 1.2+ minimum).</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Important:</strong> If an endpoint URL does not comply with the secure domain and SSL requirements, merchant enablement and/or notification delivery can fail. </p>\n</blockquote>\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\" />\n\n<h3 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>codCustomer</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The customer code. (Is a constant that identifies us with the supplier)</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>✅</td>\n<td>ID of the agreement (company) that is making the payment</td>\n</tr>\n<tr>\n<td><code>date</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction date in format <code>YYYY-MM-DD</code></td>\n</tr>\n<tr>\n<td><code>time</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction time in format <code>HH:mm:ss</code> (24-hour clock, Bogotá time zone)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"📤-response-body-parameters\"><strong>📤 Response body parameters</strong></h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>string</td>\n<td>A message related to the query.</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>The reference of the bill. Must be unique per transaction; once a payment has been made with a given reference, that reference cannot be reused.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>The amount of the bill.</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>string</td>\n<td>The code related to the bill.</td>\n</tr>\n<tr>\n<td><code>user_code</code></td>\n<td>string</td>\n<td>The user code related to the bill.</td>\n</tr>\n<tr>\n<td><code>additional_data</code></td>\n<td>array</td>\n<td>An array of additional data containing label and value pairs.</td>\n</tr>\n<tr>\n<td><code>paymentOrder</code></td>\n<td>object</td>\n<td>Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main <code>amount</code> field may be optional as the values from <code>paymentOrder.items</code> will be used.</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"📋-paymentorder-structure\">📋 PaymentOrder Structure</h4>\n<p>When <code>paymentOrder</code> is present in the response, it contains the following structure:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>items</code></td>\n<td>array</td>\n<td>List of available payment values (maximum 10 values). Each item contains: <code>id</code> (number, required), <code>description</code> (string, required, max 50 characters), and <code>amount</code> (number, required).</td>\n</tr>\n<tr>\n<td><code>selectionMode</code></td>\n<td>string</td>\n<td>Indicates whether a single value ('single') or multiple values ('multiple') can be selected.</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note</strong>: When <code>paymentOrder</code> is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the <code>items</code> array to present payment options to the user, and then send the selected items in the <code>paymentOrderItems</code> field when submitting the transaction via <code>submitTransaction</code>.</p>\n","urlObject":{"protocol":"https","path":["queryBill",""],"host":["{{customer.domain.com}}"],"query":[],"variable":[]}},"response":[{"id":"3a035ce4-c74c-4375-8c36-f7e04976f573","name":"queryBill OK","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"reference\": \"52851385\",\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/queryBill/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:43:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success. Billing information found!\",\n    \"reference\": \"52851385\",\n    \"amount\": 77926,\n    \"code\": \"000\",\n    \"user_code\": \"1139276\",\n    \"paymentOrder\": {\n        \"items\": [\n            {\n                \"id\": 1,\n                \"description\": \"Factura de servicios\",\n                \"amount\": 50000\n            },\n            {\n                \"id\": 2,\n                \"description\": \"Multa de tránsito\",\n                \"amount\": 27926\n            }\n        ],\n        \"selectionMode\": \"multiple\"\n    },\n    \"additional_data\": [\n        {\n            \"label\": \"Contract Id\",\n            \"value\": \"1139276\"\n        },\n        {\n            \"label\": \"Names\",\n            \"value\": \"Sandra Milena\"\n        },\n        {\n            \"label\": \"Surnames\",\n            \"value\": \"Castiblanco Castiblanco\"\n        },\n        {\n            \"label\": \"Minimal amount\",\n            \"value\": 77926\n        },\n        {\n            \"label\": \"Maximum amount\",\n            \"value\": 726890\n        }\n    ]\n}"},{"id":"cc2af582-1610-4cf5-b031-f7b95225e184","name":"queryBill Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_invalid_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"reference\": \"52851385\",\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/queryBill/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:43:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"detail\": \"Invalid token.\"\n}"},{"id":"7f5696ce-82f0-43db-84a5-773eddbd37d9","name":"queryBill Not Found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"reference\": \"52851385\",\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/queryBill/"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:43:44 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Error Billing information not found!\",\n    \"reference\": \"52851385\",\n    \"amount\": 0,\n    \"code\": \"003\",\n    \"user_code\": \"0000\",\n    \"additional_data\": [\n      {}\n    ]\n}"}],"_postman_id":"20a360ac-60fa-4799-b50b-3899be462b96"},{"name":"submitTransaction","event":[{"listen":"prerequest","script":{"exec":["var moment = require('moment');\r","var ISO_8601_OFFSET = 'YYYY-MM-DDTHH:mm:ss.SSS';\r","var format_date = 'YYYY-MM-DD';\r","var format_time = 'HH:mm:ss';\r","var momentdate = moment().subtract(1, 'days').format(ISO_8601_OFFSET);\r","\r","var date = moment().format(format_date);\r","var time = moment().format(format_time);\r","\r","pm.environment.set(\"date\", date);\r","pm.environment.set(\"time\", time);\r",""],"type":"text/javascript","packages":{},"requests":{}}}],"id":"afb78815-ecc0-4f43-9a64-955d6e064a63","request":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"5\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/submitTransaction/","description":"<p>This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.</p>\n<h3 id=\"benefits-💳\">Benefits 💳</h3>\n<ul>\n<li><p><strong>Transactional idempotency</strong>: <code>transactionId</code> avoids double charges on retries/timeouts.</p>\n</li>\n<li><p><strong>Eventual consistency</strong>: queues + webhook confirmations reduce manual reconciliation.</p>\n</li>\n<li><p><strong>Operational scalability</strong>: async processing absorbs traffic spikes.</p>\n</li>\n<li><p><strong>Multiple payment items</strong>: support for partial payments or multiple concepts within a single transaction via <code>paymentOrderItems</code>.</p>\n</li>\n</ul>\n<h3 id=\"domain-and-security-requirements\">Domain and Security Requirements</h3>\n<p>To integrate with <strong>Own Network Collection</strong>, all integration endpoint URLs must follow secure domain standards.</p>\n<h4 id=\"1-url-domain-structure-all-endpoints\">1) URL domain structure (all endpoints)</h4>\n<ul>\n<li><p>Must be a fully qualified domain URL, for example: <code>https://api.yourdomain.com/path</code>.</p>\n</li>\n<li><p><code>http://</code>, IP-only endpoints, localhost domains, or self-signed development URLs are not accepted in production onboarding.</p>\n</li>\n<li><p>The domain must be publicly resolvable and reachable from Refacil infrastructure.</p>\n</li>\n</ul>\n<h4 id=\"2-ssltls-mandatory-requirement\">2) SSL/TLS mandatory requirement</h4>\n<ul>\n<li><p>Only <strong>HTTPS</strong> endpoints are accepted.</p>\n</li>\n<li><p>The domain must present a valid SSL/TLS certificate issued by a trusted CA.</p>\n</li>\n<li><p>The certificate must be active (not expired), with a complete certificate chain and valid hostname (CN/SAN match).</p>\n</li>\n<li><p>Requests can be rejected during merchant setup or runtime if certificate validation fails.</p>\n</li>\n</ul>\n<h4 id=\"3-general-api-security-restrictions\">3) General API security restrictions</h4>\n<ul>\n<li><p>Enforce token-based authentication exactly as documented (<code>Authorization</code> header).</p>\n</li>\n<li><p>Validate payload schema, data types, and required fields before processing.</p>\n</li>\n<li><p>Protect endpoints against replay and duplicate processing using idempotency controls where applicable.</p>\n</li>\n<li><p>Do not expose secrets, tokens, or sensitive personal data in logs or error messages.</p>\n</li>\n<li><p>Apply network hardening controls (rate limiting, allowlisting where possible, and TLS 1.2+ minimum).</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Important:</strong> If an endpoint URL does not comply with the secure domain and SSL requirements, merchant enablement and/or notification delivery can fail. </p>\n</blockquote>\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\" />\n\n<h3 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>codCustomer</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The customer code. (Is a constant that identifies us with the supplier)</td>\n</tr>\n<tr>\n<td><code>transactionId</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The transaction ID.</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The reference for the transaction. Min. 1 character, max. 50 characters.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>The amount of the transaction.</td>\n</tr>\n<tr>\n<td><code>paymentOrderItems</code></td>\n<td>array</td>\n<td>❌</td>\n<td>Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: <code>id</code> (number, required), <code>description</code> (string, required, max 50 characters), and <code>amount</code> (number, required).</td>\n</tr>\n<tr>\n<td><code>date</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction date in format <code>YYYY-MM-DD</code></td>\n</tr>\n<tr>\n<td><code>time</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction time in format <code>HH:mm:ss</code> (24-hour clock, Bogotá time zone)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"📋-paymentorderitems-structure\">📋 PaymentOrderItems Structure</h4>\n<p>When using <code>paymentOrderItems</code>, each element in the array must have the following structure:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Unique numeric identifier for the payment value</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Description of the payment value (maximum 50 characters)</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Numeric value to be paid</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note</strong>: When <code>paymentOrderItems</code> is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main <code>amount</code> field should match the sum of all <code>amount</code> values in <code>paymentOrderItems</code>.</p>\n<h3 id=\"📤-response-body-parameters\">📤 Response Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>string</td>\n<td>A message regarding the transaction submission.</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>The reference for the submitted transaction.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>The amount of the submitted transaction.</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>string</td>\n<td>A code related to the transaction.</td>\n</tr>\n<tr>\n<td><code>user_code</code></td>\n<td>string</td>\n<td>User-specific code related to the transaction.</td>\n</tr>\n<tr>\n<td><code>additional_data</code></td>\n<td>array</td>\n<td>Additional data associated with the transaction, including label and value pairs.</td>\n</tr>\n<tr>\n<td>---</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["submitTransaction",""],"host":["{{customer.domain.com}}"],"query":[],"variable":[]}},"response":[{"id":"df5b5129-4ca9-49c8-b3e6-c17a5debda54","name":"submitTransaction OK","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"5\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/submitTransaction/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:56:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"204"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Success. Payment sent successfully\",\n    \"reference\": \"52851385\",\n    \"amount\": 77926,\n    \"code\": \"000\",\n    \"user_code\": \"1139276\",\n    \"additional_data\": [\n        {\n            \"label\": \"Information\",\n            \"value\": \"Payment sent successfully.\"\n        }\n    ]\n}"},{"id":"1698b108-1b03-4305-becf-57002783b0cd","name":"submitTransaction Unauthorized","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_invalid_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"5\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/submitTransaction/"},"status":"Unauthorized","code":401,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:56:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"204"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"Unauthorized access.\",\n  \"reference\": \"52851385\",\n  \"amount\": 0,\n  \"code\": \"004\",\n  \"user_code\": \"0000\",\n  \"additional_data\": [\n    {\n      \"label\": \"Information\",\n      \"value\": \"Unauthorized access. Please check your credentials and try again.\"\n    }\n  ]\n}"},{"id":"fc1b570b-6bcc-4c36-a287-7a5b7c8acede","name":"submitTransaction Not Found","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"5\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/submitTransaction/"},"status":"Not Found","code":404,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:56:02 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Content-Length","value":"204"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"}],"cookie":[],"responseTime":null,"body":"{\n  \"message\": \"Customer information not found.\",\n  \"reference\": \"52851385\",\n  \"amount\": 0,\n  \"code\": \"003\",\n  \"user_code\": \"0000\",\n  \"additional_data\": [\n    {\n      \"label\": \"Information\",\n      \"value\": \"We can't find info for the given customer.\"\n    }\n  ]\n}"}],"_postman_id":"afb78815-ecc0-4f43-9a64-955d6e064a63"},{"name":"rollbackTransaction","event":[{"listen":"prerequest","script":{"exec":["var moment = require('moment');\r","var ISO_8601_OFFSET = 'YYYY-MM-DDTHH:mm:ss.SSS';\r","var format_date = 'YYYY-MM-DD';\r","var format_time = 'HH:mm:ss';\r","var momentdate = moment().subtract(1, 'days').format(ISO_8601_OFFSET);\r","\r","var date = moment().format(format_date);\r","var time = moment().format(format_time);\r","\r","pm.environment.set(\"date\", date);\r","pm.environment.set(\"time\", time);\r",""],"type":"text/javascript","packages":{}}}],"id":"69200130-30d5-4aac-bfd1-2daee86c847e","request":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"4\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/rollbackTransaction/","description":"<p>This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.</p>\n<h3 id=\"benefits-🔁\">Benefits 🔁</h3>\n<ul>\n<li><p><strong>Risk control</strong>: safe, auditable reversal for external failures/inconsistencies.</p>\n</li>\n<li><p><strong>Full traceability</strong>: reversal events and contingency log.</p>\n</li>\n<li><p><strong>Business continuity</strong>: formal channel for emergencies without invasive manual actions.</p>\n</li>\n<li><p><strong>Multiple payment items support</strong>: allows rollback of transactions with multiple payment concepts via <code>paymentOrderItems</code>.</p>\n</li>\n</ul>\n<h3 id=\"domain-and-security-requirements\">Domain and Security Requirements</h3>\n<p>To integrate with <strong>Own Network Collection</strong>, all integration endpoint URLs must follow secure domain standards.</p>\n<h4 id=\"1-url-domain-structure-all-endpoints\">1) URL domain structure (all endpoints)</h4>\n<ul>\n<li><p>Must be a fully qualified domain URL, for example: <code>https://api.yourdomain.com/path</code>.</p>\n</li>\n<li><p><code>http://</code>, IP-only endpoints, localhost domains, or self-signed development URLs are not accepted in production onboarding.</p>\n</li>\n<li><p>The domain must be publicly resolvable and reachable from Refacil infrastructure.</p>\n</li>\n</ul>\n<h4 id=\"2-ssltls-mandatory-requirement\">2) SSL/TLS mandatory requirement</h4>\n<ul>\n<li><p>Only <strong>HTTPS</strong> endpoints are accepted.</p>\n</li>\n<li><p>The domain must present a valid SSL/TLS certificate issued by a trusted CA.</p>\n</li>\n<li><p>The certificate must be active (not expired), with a complete certificate chain and valid hostname (CN/SAN match).</p>\n</li>\n<li><p>Requests can be rejected during merchant setup or runtime if certificate validation fails.</p>\n</li>\n</ul>\n<h4 id=\"3-general-api-security-restrictions\">3) General API security restrictions</h4>\n<ul>\n<li><p>Enforce token-based authentication exactly as documented (<code>Authorization</code> header).</p>\n</li>\n<li><p>Validate payload schema, data types, and required fields before processing.</p>\n</li>\n<li><p>Protect endpoints against replay and duplicate processing using idempotency controls where applicable.</p>\n</li>\n<li><p>Do not expose secrets, tokens, or sensitive personal data in logs or error messages.</p>\n</li>\n<li><p>Apply network hardening controls (rate limiting, allowlisting where possible, and TLS 1.2+ minimum).</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Important:</strong> If an endpoint URL does not comply with the secure domain and SSL requirements, merchant enablement and/or notification delivery can fail. </p>\n</blockquote>\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\" />\n\n<h4 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>codCustomer</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The customer code. (Is a constant that identifies us with the supplier)</td>\n</tr>\n<tr>\n<td><code>transactionId</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The transaction ID.</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>✅</td>\n<td>The reference for the transaction.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>The amount of the transaction.</td>\n</tr>\n<tr>\n<td><code>paymentOrderItems</code></td>\n<td>array</td>\n<td>❌</td>\n<td>Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: <code>id</code> (number, required), <code>description</code> (string, required, max 50 characters), and <code>amount</code> (number, required).</td>\n</tr>\n<tr>\n<td><code>date</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction date in format <code>YYYY-MM-DD</code></td>\n</tr>\n<tr>\n<td><code>time</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Transaction time in format <code>HH:mm:ss</code> (24-hour clock, Bogotá time zone)</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"📋-paymentorderitems-structure\">📋 PaymentOrderItems Structure</h4>\n<p>When using <code>paymentOrderItems</code>, each element in the array must have the following structure:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Unique numeric identifier for the payment value</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Description of the payment value (maximum 50 characters)</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Numeric value to be paid</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note</strong>: When <code>paymentOrderItems</code> is provided, it allows rollback of transactions with multiple payment concepts. The main <code>amount</code> field should match the sum of all <code>amount</code> values in <code>paymentOrderItems</code>.</p>\n<h4 id=\"📤-response-body-parameters\">📤 Response Body Parameters</h4>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>message</code></td>\n<td>string</td>\n<td>A message indicating the status of the rollback process.</td>\n</tr>\n<tr>\n<td><code>reference</code></td>\n<td>string</td>\n<td>The reference number of the transaction.</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>The amount of the transaction.</td>\n</tr>\n<tr>\n<td><code>code</code></td>\n<td>string</td>\n<td>A status code for the rollback process.</td>\n</tr>\n<tr>\n<td><code>user_code</code></td>\n<td>string</td>\n<td>A user-specific code related to the rollback process.</td>\n</tr>\n<tr>\n<td><code>additional_data</code></td>\n<td>(array)</td>\n<td>An array containing additional information about the rollback, including label and value pairs.</td>\n</tr>\n<tr>\n<td>---</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div>","urlObject":{"protocol":"https","path":["rollbackTransaction",""],"host":["{{customer.domain.com}}"],"query":[],"variable":[]}},"response":[{"id":"fa8fbf7e-c1bf-428c-b159-f3c7b033d9d0","name":"rollbackTransaction OK","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n    \"codCustomer\": \"1\",\r\n    \"transactionId\": \"4\",\r\n    \"reference\": \"52851385\",\r\n    \"amount\": 77926.0,\r\n    \"paymentOrderItems\": [\r\n        {\r\n            \"id\": 1,\r\n            \"description\": \"Factura de servicios\",\r\n            \"amount\": 50000\r\n        },\r\n        {\r\n            \"id\": 2,\r\n            \"description\": \"Multa de tránsito\",\r\n            \"amount\": 27926\r\n        }\r\n    ],\r\n    \"date\": \"2025-03-16\",\r\n    \"time\": \"15:03:04\"\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/rollbackTransaction/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:46:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n    \"message\": \"Payment reversed successfully\",\n    \"reference\": \"52851385\",\n    \"amount\": 77926,\n    \"code\": \"000\",\n    \"user_code\": \"0000\",\n    \"additional_data\": [\n        {\n            \"label\": \"Information\",\n            \"value\": \"The payment with ID: 4 from customer: 52851385 has been reversed successfully. This process is made by our team and may take up to 48 hours to be reflected in your account.\"\n        }\n    ]\n}"}],"_postman_id":"69200130-30d5-4aac-bfd1-2daee86c847e"},{"name":"webhook","event":[{"listen":"prerequest","script":{"exec":["var moment = require('moment');\r","var ISO_8601_OFFSET = 'YYYY-MM-DDTHH:mm:ss.SSS';\r","var format_date = 'YYYY-MM-DD';\r","var format_time = 'HH:mm:ss';\r","var momentdate = moment().subtract(1, 'days').format(ISO_8601_OFFSET);\r","\r","var date = moment().format(format_date);\r","var time = moment().format(format_time);\r","\r","pm.environment.set(\"date\", date);\r","pm.environment.set(\"time\", time);\r",""],"type":"text/javascript","packages":{}}}],"id":"0bea63c0-6e1f-41b0-9365-13caa90a0076","request":{"method":"POST","header":[{"key":"Authorization","value":"Token {{customer_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"realAmount\": 2500,\r\n  \"amount\": 2400,\r\n  \"cost\": \"100\",\r\n  \"referenceId\": \"1769505\",\r\n  \"customerReference\": \"REF10000016\",\r\n  \"updatedAt\": \"2025-07-31 10:21:57\",\r\n  \"status\": 2,\r\n  \"sign\": \"0ef1c3c2fa48121ee51f225270194f7fb62e2892\",\r\n  \"paymentOrderItems\": [\r\n    {\r\n      \"id\": 1,\r\n      \"description\": \"Factura de servicios\",\r\n      \"amount\": 1500\r\n    },\r\n    {\r\n      \"id\": 2,\r\n      \"description\": \"Multa de tránsito\",\r\n      \"amount\": 900\r\n    }\r\n  ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/webhook/","description":"<p>This endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.</p>\n<h3 id=\"benefits-🔔\">Benefits 🔔</h3>\n<ul>\n<li><p><strong>Push notifications</strong>: eliminates polling, reduces cost and update latency.</p>\n</li>\n<li><p><strong>Security</strong>: signature/auth validation for trusted origin.</p>\n</li>\n<li><p><strong>Robust delivery</strong>: retries, backoff and DLQ (if applicable) ensure reception.</p>\n</li>\n<li><p><strong>Simple integration</strong>: compact contract (status/timestamps/ids), quick to implement.</p>\n</li>\n<li><p><strong>Multiple payment items</strong>: includes payment order items when transactions involve multiple payment concepts.</p>\n</li>\n</ul>\n<h3 id=\"domain-and-security-requirements\">Domain and Security Requirements</h3>\n<p>To integrate with <strong>Own Network Collection</strong>, all integration endpoint URLs must follow secure domain standards.</p>\n<h4 id=\"1-url-domain-structure-all-endpoints\">1) URL domain structure (all endpoints)</h4>\n<ul>\n<li><p>Must be a fully qualified domain URL, for example: <code>https://api.yourdomain.com/path</code>.</p>\n</li>\n<li><p><code>http://</code>, IP-only endpoints, localhost domains, or self-signed development URLs are not accepted in production onboarding.</p>\n</li>\n<li><p>The domain must be publicly resolvable and reachable from Refacil infrastructure.</p>\n</li>\n</ul>\n<h4 id=\"2-ssltls-mandatory-requirement\">2) SSL/TLS mandatory requirement</h4>\n<ul>\n<li><p>Only <strong>HTTPS</strong> endpoints are accepted.</p>\n</li>\n<li><p>The domain must present a valid SSL/TLS certificate issued by a trusted CA.</p>\n</li>\n<li><p>The certificate must be active (not expired), with a complete certificate chain and valid hostname (CN/SAN match).</p>\n</li>\n<li><p>Requests can be rejected during merchant setup or runtime if certificate validation fails.</p>\n</li>\n</ul>\n<h4 id=\"3-general-api-security-restrictions\">3) General API security restrictions</h4>\n<ul>\n<li><p><strong>Webhook validation</strong>: this endpoint authenticates incoming notifications using the HMAC-SHA1 <strong>signature</strong> in the <code>sign</code> field, not by JWT or token-based authentication.</p>\n</li>\n<li><p>Validate payload schema, data types, and required fields before processing.</p>\n</li>\n<li><p>Protect endpoints against replay and duplicate processing using idempotency controls where applicable.</p>\n</li>\n<li><p>Do not expose secrets, tokens, or sensitive personal data in logs or error messages.</p>\n</li>\n<li><p>Apply network hardening controls (rate limiting, allowlisting where possible, and TLS 1.2+ minimum).</p>\n</li>\n</ul>\n<blockquote>\n<p><strong>Important:</strong> If an endpoint URL does not comply with the secure domain and SSL requirements, merchant enablement and/or notification delivery can fail. </p>\n</blockquote>\n<h3 id=\"📥-request-body-parameters\">📥 Request Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Required</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>realAmount</td>\n<td>number</td>\n<td>✅</td>\n<td>Real transaction amount (without costs)</td>\n</tr>\n<tr>\n<td>amount</td>\n<td>number</td>\n<td>✅</td>\n<td>Total transaction amount (including costs)</td>\n</tr>\n<tr>\n<td>cost</td>\n<td>string</td>\n<td>✅</td>\n<td>Total transaction cost</td>\n</tr>\n<tr>\n<td>referenceId</td>\n<td>string</td>\n<td>✅</td>\n<td>Unique transaction identifier</td>\n</tr>\n<tr>\n<td>customerReference</td>\n<td>string</td>\n<td>✅</td>\n<td>Customer reference provided during the transaction</td>\n</tr>\n<tr>\n<td>updatedAt</td>\n<td>string</td>\n<td>✅</td>\n<td>Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\")</td>\n</tr>\n<tr>\n<td>status</td>\n<td>number</td>\n<td>✅</td>\n<td>Transaction status ID : 1 Pending , 2 Approved ,3 Failed</td>\n</tr>\n<tr>\n<td>sign</td>\n<td>string</td>\n<td>✅</td>\n<td>Security signature to validate message integrity</td>\n</tr>\n<tr>\n<td>paymentOrderItems</td>\n<td>array</td>\n<td>❌</td>\n<td>Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: <code>id</code> (number, required), <code>description</code> (string, required), and <code>amount</code> (number, required).</td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"📋-paymentorderitems-structure\">📋 PaymentOrderItems Structure</h4>\n<p>When <code>paymentOrderItems</code> is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the <code>submitTransaction</code> request:</p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Field</strong></th>\n<th><strong>Type</strong></th>\n<th><strong>Required</strong></th>\n<th><strong>Description</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code>id</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Unique numeric identifier for the payment value</td>\n</tr>\n<tr>\n<td><code>description</code></td>\n<td>string</td>\n<td>✅</td>\n<td>Description of the payment value</td>\n</tr>\n<tr>\n<td><code>amount</code></td>\n<td>number</td>\n<td>✅</td>\n<td>Numeric value that was paid</td>\n</tr>\n</tbody>\n</table>\n</div><p><strong>Note</strong>: When <code>paymentOrderItems</code> is present, the <code>amount</code> field represents the total sum of all items. Verify that the sum of <code>paymentOrderItems[].amount</code> equals the total <code>amount</code>.</p>\n<h3 id=\"📤-response-body-parameters\">📤 Response Body Parameters</h3>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Field</th>\n<th>Type</th>\n<th>Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>statusCode</td>\n<td>number</td>\n<td>HTTP status code of the response</td>\n</tr>\n<tr>\n<td>message</td>\n<td>string</td>\n<td>Message indicating the operation result</td>\n</tr>\n<tr>\n<td>date</td>\n<td>number</td>\n<td>Response timestamp</td>\n</tr>\n<tr>\n<td>payload</td>\n<td>object</td>\n<td>Response payload (optional)</td>\n</tr>\n</tbody>\n</table>\n</div><h3 id=\"🔐-security-validation\">🔐 Security Validation</h3>\n<p>The sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:</p>\n<pre class=\"click-to-expand-wrapper is-snippet-wrapper\"><code class=\"language-javascript\">let signature = referenceId-resourceId-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n</code></pre>\n<p>Note: The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.</p>\n","urlObject":{"protocol":"https","path":["webhook",""],"host":["{{customer.domain.com}}"],"query":[],"variable":[]}},"response":[{"id":"166410f1-973b-422d-9e2f-816cd75a3431","name":"webhook OK","originalRequest":{"method":"POST","header":[{"key":"Authorization","value":"Token {{generate_token}}","type":"text"}],"body":{"mode":"raw","raw":"{\r\n  \"realAmount\": 2500,\r\n  \"amount\": 2400,\r\n  \"cost\": \"100\",\r\n  \"referenceId\": \"1769505\",\r\n  \"customerReference\": \"REF10000016\",\r\n  \"updatedAt\": \"2025-07-31 10:21:57\",\r\n  \"status\": 2,\r\n  \"sign\": \"0ef1c3c2fa48121ee51f225270194f7fb62e2892\",\r\n  \"paymentOrderItems\": [\r\n    {\r\n      \"id\": 1,\r\n      \"description\": \"Factura de servicios\",\r\n      \"amount\": 1500\r\n    },\r\n    {\r\n      \"id\": 2,\r\n      \"description\": \"Multa de tránsito\",\r\n      \"amount\": 900\r\n    }\r\n  ]\r\n}","options":{"raw":{"language":"json"}}},"url":"https://{{customer.domain.com}}/webhook/"},"status":"OK","code":200,"_postman_previewlanguage":"json","header":[{"key":"Date","value":"Fri, 15 Dec 2023 14:46:47 GMT"},{"key":"Content-Type","value":"application/json"},{"key":"Transfer-Encoding","value":"chunked"},{"key":"Connection","value":"keep-alive"},{"key":"Server","value":"openresty/1.15.8.1"},{"key":"Vary","value":"Accept-Encoding"},{"key":"Vary","value":"Accept, Accept-Language, origin"},{"key":"Allow","value":"POST, OPTIONS"},{"key":"X-Frame-Options","value":"DENY"},{"key":"Content-Language","value":"en"},{"key":"X-Content-Type-Options","value":"nosniff"},{"key":"X-XSS-Protection","value":"1; mode=block"},{"key":"Referrer-Policy","value":"same-origin"},{"key":"Content-Encoding","value":"gzip"}],"cookie":[],"responseTime":null,"body":"{\n  \"statusCode\": 200,\n  \"message\": \"Notification received successfully\",\n  \"date\": 1640995200000,\n  \"payload\": {\n    \"transactionId\": \"1769505\",\n    \"status\": \"approved\"\n  }\n}"}],"_postman_id":"0bea63c0-6e1f-41b0-9365-13caa90a0076"}],"id":"97a18c77-316d-4730-a1ef-ab531bc81818","description":"<p>Collection of Own Network services. Integrators expose these endpoints so the platform can query bills, submit payments, and receive notifications in a consistent way.</p>\n<h2 id=\"📝-recommendations\">📝 Recommendations</h2>\n<ul>\n<li>Establish a dedicated <strong>QA environment</strong> to perform thorough testing before production deployment.</li>\n<li>Set a minimum timeout of <strong>60 milliseconds</strong> for API requests to handle longer processes reliably.</li>\n<li>Provide clear and <strong>standardized error mapping</strong>, detailing error codes, messages, and causes for better troubleshooting.</li>\n</ul>\n<h2 id=\"🔐-authorization\">🔐 Authorization</h2>\n<p>To establish a secure connection with our clients' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.</p>\n<p><strong>Token format:</strong></p>\n<p><code>Authorization: Token {generate_token_value}</code></p>\n<p><strong>Example:</strong></p>\n<p><code>Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**</code></p>\n<h2 id=\"❗-error-handling\">❗ Error handling</h2>\n<p>All errors must return an HTTP status code in the <strong>4xx or 5xx family</strong> (i.e. <strong>400 or above</strong>). Do not return 2xx codes when the operation has failed.</p>\n<ul>\n<li><strong>4xx (client errors)</strong>: 400 Bad Request, 401 Unauthorized, 403 Forbidden, 404 Not Found, etc.</li>\n<li><strong>5xx (server errors)</strong>: 500 Internal Server Error, 502 Bad Gateway, 503 Service Unavailable, etc.</li>\n</ul>\n<h2 id=\"🧱-error-response-structure\">🧱 Error response structure</h2>\n<p>There is no single mandatory error schema across all endpoints. One of the following patterns is recommended depending on the endpoint type.</p>\n<h3 id=\"option-a--minimum-structure-recommended-for-all-endpoints\">Option A — Minimum structure (recommended for all endpoints)</h3>\n<p>Return a JSON body with at least:</p>\n<ul>\n<li><code>statusCode</code> (number): HTTP status code of the response (must match the HTTP status).</li>\n<li><code>message</code> (string): Human-readable message describing the error.</li>\n<li><code>errorCode</code> (string, optional): Internal error code for integration/support (e.g. <code>auth.invalid</code>, <code>billing.not_found</code>).</li>\n</ul>\n<h3 id=\"option-b--transactional-endpoints-querybill-submittransaction-rollbacktransaction\">Option B — Transactional endpoints (<code>queryBill</code>, <code>submitTransaction</code>, <code>rollbackTransaction</code>)</h3>\n<p>For transactional operations, use this structure:</p>\n<ul>\n<li><code>message</code> (string): Message describing the error.</li>\n<li><code>reference</code> (string): Reference associated with the operation.</li>\n<li><code>amount</code> (number): Amount (0 in case of error).</li>\n<li><code>code</code> (string): Business status code (e.g. <code>003</code>, <code>004</code>).</li>\n<li><code>user_code</code> (string): User code when applicable.</li>\n<li><code>additional_data</code> (array): List of <code>{ \"label\", \"value\" }</code> objects with additional information.</li>\n</ul>\n<h3 id=\"authentication-errors-401403\">Authentication errors (401/403)</h3>\n<p>Some examples only return <code>detail</code> (string) or a combination of <code>message</code>, <code>error</code>, and <code>statusCode</code>. When possible, align these responses with Option A for consistency.</p>\n<p>In all cases, the error body must be JSON and must provide enough information for the integrator to identify the failure, correct the data, or decide whether to retry.</p>\n","event":[{"listen":"prerequest","script":{"type":"text/javascript","packages":{},"exec":[""]}},{"listen":"test","script":{"type":"text/javascript","packages":{},"exec":[""]}}],"_postman_id":"97a18c77-316d-4730-a1ef-ab531bc81818"}],"id":"47e30cc8-ac7d-433a-8ee1-98afb7540c70","description":"<p><strong>Base URL:</strong>  </p>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Environment</strong></th>\n<th><strong>Value</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>QA</td>\n<td><a href=\"https://collection-api.qa.refacil.co\">https://collection-api.qa.refacil.co</a></td>\n</tr>\n<tr>\n<td>PROD</td>\n<td><a href=\"https://collection-api.qa.refacil.co\">https://collection-api.refacil.co</a></td>\n</tr>\n</tbody>\n</table>\n</div><h4 id=\"request-your-secret-id\">Request your Secret ID</h4>\n<p>To start using the Collection API, you must first obtain a <strong>Secret ID</strong>. This ID is provided manually by the support team: 📩 <code>soportetecnico@refacil.com</code></p>\n<blockquote>\n<p>Once issued, the Secret ID must be included in all authentication requests using the header <code>x-secret-id</code></p>\n</blockquote>\n","_postman_id":"47e30cc8-ac7d-433a-8ee1-98afb7540c70"}]}