dcos-core-monalisav2-latam 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +130 -0
- package/index.js +350 -0
- package/package.json +52 -0
- package/src/auth/handler.js +3 -0
- package/src/common/MondelezCastOrder.js +449 -0
- package/src/common/utils/AuthSecurity.js +46 -0
- package/src/common/utils/account-error-handler.js +279 -0
- package/src/common/utils/account-error-helper.js +231 -0
- package/src/common/utils/account-properties-handler.js +355 -0
- package/src/common/utils/api-response.js +62 -0
- package/src/common/utils/aws-services.js +186 -0
- package/src/common/utils/constants/account-error-codes.json +801 -0
- package/src/common/utils/constants.js +37 -0
- package/src/common/utils/convert/MondelezClientsItemsCast.js +52 -0
- package/src/common/utils/convert/MondelezInventoryItemsCast.js +15 -0
- package/src/common/utils/convert/MondelezOrderStatusCast.js +34 -0
- package/src/common/utils/convert/MondelezPricesItemsCast.js +37 -0
- package/src/common/utils/cron-ftp-get.js +143 -0
- package/src/common/utils/data-tables-helper.js +213 -0
- package/src/common/utils/date-range-calculator.js +113 -0
- package/src/common/utils/delay.js +17 -0
- package/src/common/utils/ftp-sftp.js +320 -0
- package/src/common/utils/logger.js +126 -0
- package/src/common/utils/nodemailerLib.js +61 -0
- package/src/common/utils/product-unit-converter.js +168 -0
- package/src/common/utils/schemas-utils.js +101 -0
- package/src/common/utils/seller-email-sharing-service.js +441 -0
- package/src/common/utils/sftp-utils.js +202 -0
- package/src/common/utils/status.js +15 -0
- package/src/common/utils/util.js +236 -0
- package/src/common/utils/validate-state-order.js +35 -0
- package/src/common/utils/validateProviders.js +67 -0
- package/src/common/utils/validation-data.js +45 -0
- package/src/common/utils/vtex/save-hooks.js +65 -0
- package/src/common/utils/vtex/save-schemas.js +65 -0
- package/src/common/utils/vtex-hook-handler.js +71 -0
- package/src/common/validation/AccountCoordinatesValidation.js +350 -0
- package/src/common/validation/GeneralErrorValidation.js +11 -0
- package/src/common/validation/MainErrorValidation.js +8 -0
- package/src/entities/account.js +639 -0
- package/src/entities/clients.js +104 -0
- package/src/entities/controlprice.js +196 -0
- package/src/entities/controlstock.js +206 -0
- package/src/entities/cron.js +77 -0
- package/src/entities/cronjob.js +71 -0
- package/src/entities/orders.js +195 -0
- package/src/entities/sftp-inbound.js +88 -0
- package/src/entities/sku.js +220 -0
- package/src/entities/taxpromotion.js +249 -0
- package/src/functions/account/account-get.js +262 -0
- package/src/functions/account/account-handler.js +299 -0
- package/src/functions/account/clients.js +10 -0
- package/src/functions/account/index.js +208 -0
- package/src/functions/actions/save-promotions-order-history.js +324 -0
- package/src/functions/affiliates/affiliates-hook-consumer.js +87 -0
- package/src/functions/affiliates/affiliates-hook-producer.js +45 -0
- package/src/functions/clients/clients-audience.js +62 -0
- package/src/functions/clients/clients-consumer.js +648 -0
- package/src/functions/clients/clients-producer.js +362 -0
- package/src/functions/clients/clients-suggested-product-consumer.js +166 -0
- package/src/functions/clients/helpers/suggested-product-mdlz.js +233 -0
- package/src/functions/clients_peru/email.html +129 -0
- package/src/functions/clients_peru/splitfile.js +357 -0
- package/src/functions/clients_peru/updateClients.js +1334 -0
- package/src/functions/clients_peru/utils.js +243 -0
- package/src/functions/cronjobs/cron-jobs-manager.js +40 -0
- package/src/functions/cronjobs/cron-jobs.js +171 -0
- package/src/functions/crons/cron.js +39 -0
- package/src/functions/distributors/distributor-handler.js +81 -0
- package/src/functions/distributors/distributor.js +535 -0
- package/src/functions/distributors/index.js +60 -0
- package/src/functions/financialpolicy/assign-financialpolicy.js +111 -0
- package/src/functions/financialpolicy/get-financialpolicy.js +91 -0
- package/src/functions/financialpolicy/index.js +28 -0
- package/src/functions/inventory/catalog-sync-consumer.js +17 -0
- package/src/functions/inventory/catalog-sync-handler.js +311 -0
- package/src/functions/inventory/inventory-consumer.js +119 -0
- package/src/functions/inventory/inventory-producer.js +197 -0
- package/src/functions/multiPresentation/multipre-queue.js +155 -0
- package/src/functions/multiPresentation/multipres.js +459 -0
- package/src/functions/nodeflow/index.js +83 -0
- package/src/functions/nodeflow/nodeflow-cron.js +200 -0
- package/src/functions/nodeflow/nodeflow-pub.js +203 -0
- package/src/functions/nodeflow/nodeflow-pvt.js +266 -0
- package/src/functions/notifications/download-leads-handler.js +67 -0
- package/src/functions/notifications/new-leads-notification-consumer.js +17 -0
- package/src/functions/notifications/new-leads-notification-handler.js +359 -0
- package/src/functions/notifications/order-status-notification-handler.js +482 -0
- package/src/functions/notifications/promotion-notification-handler.js +193 -0
- package/src/functions/orders/index.js +32 -0
- package/src/functions/orders/orders-cancel-handler.js +74 -0
- package/src/functions/orders/orders-handler.js +280 -0
- package/src/functions/orders/orders-hook-consumer.js +137 -0
- package/src/functions/orders/orders-hook-producer.js +170 -0
- package/src/functions/orders/orders-notifications-handler.js +137 -0
- package/src/functions/orders/orders-status-consumer.js +461 -0
- package/src/functions/orders/orders-status-producer.js +443 -0
- package/src/functions/prices/index.js +75 -0
- package/src/functions/prices/prices-consumer.js +236 -0
- package/src/functions/prices/prices-producer.js +323 -0
- package/src/functions/prices/promotion-and-tax.js +1284 -0
- package/src/functions/routesflow/assign-routeflow-queue.js +77 -0
- package/src/functions/schemas/vtex/handle-schemas.js +102 -0
- package/src/functions/security/process_gas.js +221 -0
- package/src/functions/security/security-handler.js +950 -0
- package/src/functions/sftp/sftp-consumer.js +453 -0
- package/src/functions/sftpIntegrations/processes/redirectServices.js +184 -0
- package/src/functions/sftpIntegrations/processes/validateFileSchema.js +226 -0
- package/src/functions/sftpIntegrations/schemas/credential-schema.js +123 -0
- package/src/functions/sftpIntegrations/schemas/record-schema.js +131 -0
- package/src/functions/sftpIntegrations/schemas/sftp_required_fields.json +3 -0
- package/src/functions/sftpIntegrations/sftp-config-producer.js +112 -0
- package/src/functions/sftpIntegrations/sftp-consumer.js +700 -0
- package/src/functions/sftpIntegrations/test/validateFile.test.js +122 -0
- package/src/functions/sftpIntegrations/utils/connect-dynamo.js +29 -0
- package/src/functions/sftpIntegrations/utils/split-data.js +25 -0
- package/src/functions/utils/index.js +130 -0
- package/src/functions/vtex/vtex-helpers.js +694 -0
- package/src/integrations/accountErrors/AccountErrorManager.js +437 -0
- package/src/integrations/audience/Audience.js +70 -0
- package/src/integrations/financialPolicy/FinancialPolicyApi.js +377 -0
- package/src/integrations/index.js +0 -0
- package/src/integrations/mobilvendor/MobilvendorApi.js +405 -0
- package/src/integrations/productmultipresentation/ProductMultiPresentation.js +200 -0
- package/src/mdlz/auth/SecretManagerApi.js +77 -0
- package/src/mdlz/client/MdlzApi.js +70 -0
- package/src/vtex/clients/ProvidersApi.js +51 -0
- package/src/vtex/clients/VtexApi.js +511 -0
- package/src/vtex/models/VtexOrder.js +87 -0
|
@@ -0,0 +1,801 @@
|
|
|
1
|
+
{
|
|
2
|
+
"accountErrorCodes": {
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"lastUpdated": "2025-01-28",
|
|
5
|
+
"description": "Códigos de error para operaciones de Account Management (crear/actualizar cuentas)",
|
|
6
|
+
"totalCodes": 30,
|
|
7
|
+
"errors": {
|
|
8
|
+
"ACCOUNT_001": {
|
|
9
|
+
"code": "ACCOUNT_001",
|
|
10
|
+
"httpStatus": 400,
|
|
11
|
+
"message": "No body was found",
|
|
12
|
+
"description": "El cuerpo de la petición está vacío o no se recibió",
|
|
13
|
+
"context": "Validación inicial de la petición",
|
|
14
|
+
"category": "Validación de Entrada",
|
|
15
|
+
"severity": "high",
|
|
16
|
+
"possibleCauses": [
|
|
17
|
+
"Petición enviada sin body",
|
|
18
|
+
"Content-Type incorrecto",
|
|
19
|
+
"Datos corruptos en transmisión"
|
|
20
|
+
],
|
|
21
|
+
"solutions": [
|
|
22
|
+
"Verificar que se está enviando un JSON válido en el body",
|
|
23
|
+
"Confirmar Content-Type: application/json",
|
|
24
|
+
"Validar la estructura de la petición"
|
|
25
|
+
],
|
|
26
|
+
"relatedEndpoints": [
|
|
27
|
+
"POST /account/create",
|
|
28
|
+
"POST /account/sftp"
|
|
29
|
+
]
|
|
30
|
+
},
|
|
31
|
+
|
|
32
|
+
"ACCOUNT_002": {
|
|
33
|
+
"code": "ACCOUNT_002",
|
|
34
|
+
"httpStatus": 400,
|
|
35
|
+
"message": "Account name is required",
|
|
36
|
+
"description": "El campo AccountName es obligatorio pero no se proporcionó",
|
|
37
|
+
"context": "Validación de campos requeridos",
|
|
38
|
+
"category": "Validación de Entrada",
|
|
39
|
+
"severity": "high",
|
|
40
|
+
"possibleCauses": [
|
|
41
|
+
"AccountName no incluido en el JSON",
|
|
42
|
+
"AccountName con valor null o vacío",
|
|
43
|
+
"Error de tipeo en el nombre del campo"
|
|
44
|
+
],
|
|
45
|
+
"solutions": [
|
|
46
|
+
"Incluir AccountName en el body de la petición",
|
|
47
|
+
"Verificar que AccountName tenga un valor válido",
|
|
48
|
+
"Confirmar la estructura del JSON"
|
|
49
|
+
],
|
|
50
|
+
"relatedEndpoints": [
|
|
51
|
+
"POST /account/create",
|
|
52
|
+
"POST /account/sftp"
|
|
53
|
+
]
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
"ACCOUNT_003": {
|
|
57
|
+
"code": "ACCOUNT_003",
|
|
58
|
+
"httpStatus": 400,
|
|
59
|
+
"message": "Client could not be created",
|
|
60
|
+
"description": "Error al crear el cliente asociado a la cuenta",
|
|
61
|
+
"context": "Creación de cliente en DynamoDB",
|
|
62
|
+
"category": "Creación de Cuenta/Cliente",
|
|
63
|
+
"severity": "high",
|
|
64
|
+
"possibleCauses": [
|
|
65
|
+
"Error de conexión a DynamoDB",
|
|
66
|
+
"Permisos insuficientes en la tabla de clientes",
|
|
67
|
+
"ClientId ya existe en el sistema",
|
|
68
|
+
"Formato inválido de ClientId"
|
|
69
|
+
],
|
|
70
|
+
"solutions": [
|
|
71
|
+
"Verificar conectividad con DynamoDB",
|
|
72
|
+
"Revisar permisos IAM para la tabla CLIENT_DATA_CONFIG_TABLE",
|
|
73
|
+
"Usar un ClientId único",
|
|
74
|
+
"Validar formato del ClientId"
|
|
75
|
+
],
|
|
76
|
+
"relatedTables": ["CLIENT_DATA_CONFIG_TABLE"],
|
|
77
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
78
|
+
},
|
|
79
|
+
|
|
80
|
+
"ACCOUNT_004": {
|
|
81
|
+
"code": "ACCOUNT_004",
|
|
82
|
+
"httpStatus": 400,
|
|
83
|
+
"message": "Account could not be created",
|
|
84
|
+
"description": "Error al crear la cuenta en DynamoDB",
|
|
85
|
+
"context": "Creación de cuenta en DynamoDB",
|
|
86
|
+
"category": "Creación de Cuenta/Cliente",
|
|
87
|
+
"severity": "high",
|
|
88
|
+
"possibleCauses": [
|
|
89
|
+
"Error de conexión a DynamoDB",
|
|
90
|
+
"Permisos insuficientes en la tabla de cuentas",
|
|
91
|
+
"Cuenta ya existe con el mismo AccountName y ParentAccountName",
|
|
92
|
+
"Datos de configuración inválidos"
|
|
93
|
+
],
|
|
94
|
+
"solutions": [
|
|
95
|
+
"Verificar conectividad con DynamoDB",
|
|
96
|
+
"Revisar permisos IAM para ACCOUNT_DATA_CONFIG_TABLE",
|
|
97
|
+
"Usar combinación única de AccountName/ParentAccountName",
|
|
98
|
+
"Validar estructura de datos de configuración"
|
|
99
|
+
],
|
|
100
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
101
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
102
|
+
},
|
|
103
|
+
|
|
104
|
+
"ACCOUNT_005": {
|
|
105
|
+
"code": "ACCOUNT_005",
|
|
106
|
+
"httpStatus": 400,
|
|
107
|
+
"message": "CodeCountry property is required when SetGeoCoordinatesGlobal or SetGeoCoordinatesApp is enabled",
|
|
108
|
+
"description": "CodeCountry es requerido cuando las coordenadas geográficas están habilitadas",
|
|
109
|
+
"context": "Validación de coordenadas geográficas",
|
|
110
|
+
"category": "Coordenadas Geográficas",
|
|
111
|
+
"severity": "medium",
|
|
112
|
+
"possibleCauses": [
|
|
113
|
+
"SetGeoCoordinatesGlobal=true sin CodeCountry",
|
|
114
|
+
"SetGeoCoordinatesApp=true sin CodeCountry",
|
|
115
|
+
"CodeCountry vacío o null"
|
|
116
|
+
],
|
|
117
|
+
"solutions": [
|
|
118
|
+
"Incluir CodeCountry en la configuración",
|
|
119
|
+
"Usar código de país válido (ej: 'CO', 'MX', 'BR')",
|
|
120
|
+
"Deshabilitar coordenadas geográficas si no son necesarias"
|
|
121
|
+
],
|
|
122
|
+
"relatedFields": ["SetGeoCoordinatesGlobal", "SetGeoCoordinatesApp", "CodeCountry"],
|
|
123
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
124
|
+
},
|
|
125
|
+
|
|
126
|
+
"ACCOUNT_006": {
|
|
127
|
+
"code": "ACCOUNT_006",
|
|
128
|
+
"httpStatus": 400,
|
|
129
|
+
"message": "Default coordinates are not configured in ConditionsGeoCoordinates.default",
|
|
130
|
+
"description": "Las coordenadas por defecto no están configuradas correctamente",
|
|
131
|
+
"context": "Validación de coordenadas por defecto",
|
|
132
|
+
"category": "Coordenadas Geográficas",
|
|
133
|
+
"severity": "medium",
|
|
134
|
+
"possibleCauses": [
|
|
135
|
+
"ConditionsGeoCoordinates.default no existe",
|
|
136
|
+
"Coordenadas por defecto con formato incorrecto",
|
|
137
|
+
"Valores de latitud/longitud inválidos"
|
|
138
|
+
],
|
|
139
|
+
"solutions": [
|
|
140
|
+
"Configurar ConditionsGeoCoordinates.default con latitude y longitude",
|
|
141
|
+
"Usar valores numéricos válidos para las coordenadas",
|
|
142
|
+
"Verificar el formato de las coordenadas geográficas"
|
|
143
|
+
],
|
|
144
|
+
"relatedFields": ["ConditionsGeoCoordinates.default"],
|
|
145
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
146
|
+
},
|
|
147
|
+
|
|
148
|
+
"ACCOUNT_007": {
|
|
149
|
+
"code": "ACCOUNT_007",
|
|
150
|
+
"httpStatus": 400,
|
|
151
|
+
"message": "Invalid default coordinates format",
|
|
152
|
+
"description": "El formato de las coordenadas por defecto es inválido",
|
|
153
|
+
"context": "Validación de formato de coordenadas",
|
|
154
|
+
"category": "Coordenadas Geográficas",
|
|
155
|
+
"severity": "medium",
|
|
156
|
+
"possibleCauses": [
|
|
157
|
+
"Latitud o longitud no son números",
|
|
158
|
+
"Valores fuera del rango válido (-90 a 90 para latitud, -180 a 180 para longitud)",
|
|
159
|
+
"Valores NaN o infinitos"
|
|
160
|
+
],
|
|
161
|
+
"solutions": [
|
|
162
|
+
"Usar valores numéricos válidos",
|
|
163
|
+
"Verificar rango de latitud (-90 a 90)",
|
|
164
|
+
"Verificar rango de longitud (-180 a 180)"
|
|
165
|
+
],
|
|
166
|
+
"relatedFields": ["ConditionsGeoCoordinates.default.latitude", "ConditionsGeoCoordinates.default.longitude"],
|
|
167
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
168
|
+
},
|
|
169
|
+
|
|
170
|
+
"ACCOUNT_008": {
|
|
171
|
+
"code": "ACCOUNT_008",
|
|
172
|
+
"httpStatus": 400,
|
|
173
|
+
"message": "VTEX regions API returned status {status} for {context}",
|
|
174
|
+
"description": "Error al validar coordenadas con la API de regiones de VTEX",
|
|
175
|
+
"context": "Validación con API de VTEX",
|
|
176
|
+
"category": "Coordenadas Geográficas",
|
|
177
|
+
"severity": "medium",
|
|
178
|
+
"possibleCauses": [
|
|
179
|
+
"Credenciales VTEX inválidas",
|
|
180
|
+
"Coordenadas fuera del área de cobertura",
|
|
181
|
+
"Error temporal de la API de VTEX",
|
|
182
|
+
"País no soportado por VTEX"
|
|
183
|
+
],
|
|
184
|
+
"solutions": [
|
|
185
|
+
"Verificar credenciales VTEX (key/token)",
|
|
186
|
+
"Usar coordenadas dentro del área de servicio",
|
|
187
|
+
"Reintentar la operación",
|
|
188
|
+
"Verificar que el país esté soportado"
|
|
189
|
+
],
|
|
190
|
+
"relatedAPIs": ["VTEX Checkout Regions API"],
|
|
191
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
192
|
+
},
|
|
193
|
+
|
|
194
|
+
"ACCOUNT_009": {
|
|
195
|
+
"code": "ACCOUNT_009",
|
|
196
|
+
"httpStatus": 400,
|
|
197
|
+
"message": "No regions found for coordinates {context} ({latitude}, {longitude})",
|
|
198
|
+
"description": "No se encontraron regiones VTEX para las coordenadas especificadas",
|
|
199
|
+
"context": "Validación de cobertura geográfica",
|
|
200
|
+
"category": "Coordenadas Geográficas",
|
|
201
|
+
"severity": "medium",
|
|
202
|
+
"possibleCauses": [
|
|
203
|
+
"Coordenadas fuera del área de cobertura VTEX",
|
|
204
|
+
"País no tiene regiones configuradas",
|
|
205
|
+
"Coordenadas incorrectas para el país especificado"
|
|
206
|
+
],
|
|
207
|
+
"solutions": [
|
|
208
|
+
"Usar coordenadas dentro del área de cobertura",
|
|
209
|
+
"Verificar configuración de regiones en VTEX",
|
|
210
|
+
"Consultar áreas de servicio disponibles"
|
|
211
|
+
],
|
|
212
|
+
"relatedAPIs": ["VTEX Checkout Regions API"],
|
|
213
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
214
|
+
},
|
|
215
|
+
|
|
216
|
+
"ACCOUNT_010": {
|
|
217
|
+
"code": "ACCOUNT_010",
|
|
218
|
+
"httpStatus": 400,
|
|
219
|
+
"message": "Account '{AccountName}' not found as seller for {context} ({latitude}, {longitude})",
|
|
220
|
+
"description": "La cuenta no está registrada como seller para las coordenadas especificadas",
|
|
221
|
+
"context": "Validación de seller en regiones",
|
|
222
|
+
"category": "Coordenadas Geográficas",
|
|
223
|
+
"severity": "medium",
|
|
224
|
+
"possibleCauses": [
|
|
225
|
+
"Cuenta no registrada como seller en VTEX",
|
|
226
|
+
"Configuración de regiones incompleta",
|
|
227
|
+
"SellerId diferente al AccountName"
|
|
228
|
+
],
|
|
229
|
+
"solutions": [
|
|
230
|
+
"Registrar la cuenta como seller en VTEX",
|
|
231
|
+
"Configurar regiones de entrega para el seller",
|
|
232
|
+
"Verificar configuración de SellerId"
|
|
233
|
+
],
|
|
234
|
+
"relatedAPIs": ["VTEX Seller Register API"],
|
|
235
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
236
|
+
},
|
|
237
|
+
|
|
238
|
+
"ACCOUNT_011": {
|
|
239
|
+
"code": "ACCOUNT_011",
|
|
240
|
+
"httpStatus": 400,
|
|
241
|
+
"message": "ParentAccountName is required when SavePriceAudience or SavePriceTableCLWL is enabled",
|
|
242
|
+
"description": "ParentAccountName es requerido para funcionalidades de precio avanzadas",
|
|
243
|
+
"context": "Validación de configuración de email sharing",
|
|
244
|
+
"category": "Seller Email Sharing",
|
|
245
|
+
"severity": "high",
|
|
246
|
+
"possibleCauses": [
|
|
247
|
+
"SavePriceAudience=true sin ParentAccountName",
|
|
248
|
+
"SavePriceTableCLWL=true sin ParentAccountName",
|
|
249
|
+
"Configuración de seller incompleta"
|
|
250
|
+
],
|
|
251
|
+
"solutions": [
|
|
252
|
+
"Configurar ParentAccountName para el seller",
|
|
253
|
+
"Configurar SellerId si el marketplace no requiere estas propiedades",
|
|
254
|
+
"Deshabilitar SavePriceAudience/SavePriceTableCLWL si no son necesarias"
|
|
255
|
+
],
|
|
256
|
+
"relatedFields": ["SavePriceAudience", "SavePriceTableCLWL", "ParentAccountName"],
|
|
257
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
258
|
+
},
|
|
259
|
+
|
|
260
|
+
"ACCOUNT_012": {
|
|
261
|
+
"code": "ACCOUNT_012",
|
|
262
|
+
"httpStatus": 400,
|
|
263
|
+
"message": "Parent account configuration not found: {ParentAccountName}",
|
|
264
|
+
"description": "No se encontró la configuración de la cuenta padre",
|
|
265
|
+
"context": "Validación de cuenta padre",
|
|
266
|
+
"category": "Seller Email Sharing",
|
|
267
|
+
"severity": "high",
|
|
268
|
+
"possibleCauses": [
|
|
269
|
+
"ParentAccountName no existe en el sistema",
|
|
270
|
+
"Error de tipeo en ParentAccountName",
|
|
271
|
+
"Cuenta padre no creada previamente"
|
|
272
|
+
],
|
|
273
|
+
"solutions": [
|
|
274
|
+
"Crear la cuenta padre primero",
|
|
275
|
+
"Verificar el nombre de la cuenta padre",
|
|
276
|
+
"Confirmar que la cuenta padre esté activa"
|
|
277
|
+
],
|
|
278
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
279
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
280
|
+
},
|
|
281
|
+
|
|
282
|
+
"ACCOUNT_013": {
|
|
283
|
+
"code": "ACCOUNT_013",
|
|
284
|
+
"httpStatus": 400,
|
|
285
|
+
"message": "VTEX credentials not found in parent account: {ParentAccountName}",
|
|
286
|
+
"description": "Las credenciales VTEX no están configuradas en la cuenta padre",
|
|
287
|
+
"context": "Validación de credenciales VTEX",
|
|
288
|
+
"category": "Seller Email Sharing",
|
|
289
|
+
"severity": "high",
|
|
290
|
+
"possibleCauses": [
|
|
291
|
+
"Credentials.key faltante en cuenta padre",
|
|
292
|
+
"Credentials.token faltante en cuenta padre",
|
|
293
|
+
"Configuración de credenciales incompleta"
|
|
294
|
+
],
|
|
295
|
+
"solutions": [
|
|
296
|
+
"Configurar key y token VTEX en la cuenta padre",
|
|
297
|
+
"Verificar permisos de las credenciales",
|
|
298
|
+
"Actualizar credenciales si han expirado"
|
|
299
|
+
],
|
|
300
|
+
"relatedFields": ["Credentials.key", "Credentials.token"],
|
|
301
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
302
|
+
},
|
|
303
|
+
|
|
304
|
+
"ACCOUNT_014": {
|
|
305
|
+
"code": "ACCOUNT_014",
|
|
306
|
+
"httpStatus": 400,
|
|
307
|
+
"message": "Seller not found in marketplace with SellerId: {SellerId}",
|
|
308
|
+
"description": "El seller no está registrado en el marketplace VTEX",
|
|
309
|
+
"context": "Validación de seller en marketplace",
|
|
310
|
+
"category": "Seller Email Sharing",
|
|
311
|
+
"severity": "high",
|
|
312
|
+
"possibleCauses": [
|
|
313
|
+
"SellerId no registrado en VTEX",
|
|
314
|
+
"Seller inactivo o suspendido",
|
|
315
|
+
"Error en configuración de marketplace"
|
|
316
|
+
],
|
|
317
|
+
"solutions": [
|
|
318
|
+
"Registrar el seller en VTEX marketplace",
|
|
319
|
+
"Activar el seller si está inactivo",
|
|
320
|
+
"Verificar configuración de SellerId"
|
|
321
|
+
],
|
|
322
|
+
"relatedAPIs": ["VTEX Seller Register API"],
|
|
323
|
+
"relatedFields": ["SellerId"],
|
|
324
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
325
|
+
},
|
|
326
|
+
|
|
327
|
+
"ACCOUNT_015": {
|
|
328
|
+
"code": "ACCOUNT_015",
|
|
329
|
+
"httpStatus": 400,
|
|
330
|
+
"message": "Failed to update seller configuration. Please retry.",
|
|
331
|
+
"description": "Error al actualizar la configuración del seller en VTEX",
|
|
332
|
+
"context": "Actualización de políticas de seller",
|
|
333
|
+
"category": "Seller Email Sharing",
|
|
334
|
+
"severity": "medium",
|
|
335
|
+
"possibleCauses": [
|
|
336
|
+
"Error temporal de API VTEX",
|
|
337
|
+
"Permisos insuficientes en credenciales",
|
|
338
|
+
"Conflicto de concurrencia en actualización"
|
|
339
|
+
],
|
|
340
|
+
"solutions": [
|
|
341
|
+
"Reintentar la operación",
|
|
342
|
+
"Verificar permisos de credenciales VTEX",
|
|
343
|
+
"Contactar soporte si el error persiste"
|
|
344
|
+
],
|
|
345
|
+
"relatedAPIs": ["VTEX Seller Register API"],
|
|
346
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
347
|
+
},
|
|
348
|
+
|
|
349
|
+
"ACCOUNT_016": {
|
|
350
|
+
"code": "ACCOUNT_016",
|
|
351
|
+
"httpStatus": 400,
|
|
352
|
+
"message": "Process is required",
|
|
353
|
+
"description": "El campo ProcessExecute es requerido para configuración SFTP",
|
|
354
|
+
"context": "Validación de configuración SFTP",
|
|
355
|
+
"category": "Configuración SFTP",
|
|
356
|
+
"severity": "high",
|
|
357
|
+
"possibleCauses": [
|
|
358
|
+
"ProcessExecute no incluido en el body",
|
|
359
|
+
"ProcessExecute con valor null o vacío"
|
|
360
|
+
],
|
|
361
|
+
"solutions": [
|
|
362
|
+
"Incluir ProcessExecute en la configuración",
|
|
363
|
+
"Usar uno de los procesos válidos: prices, inventory, clients, cancel, status"
|
|
364
|
+
],
|
|
365
|
+
"relatedFields": ["ProcessExecute"],
|
|
366
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
367
|
+
},
|
|
368
|
+
|
|
369
|
+
"ACCOUNT_017": {
|
|
370
|
+
"code": "ACCOUNT_017",
|
|
371
|
+
"httpStatus": 400,
|
|
372
|
+
"message": "Process is not valid. The valid processes are: {VALID_PROCESSES}",
|
|
373
|
+
"description": "El proceso especificado no es válido para SFTP",
|
|
374
|
+
"context": "Validación de procesos SFTP",
|
|
375
|
+
"category": "Configuración SFTP",
|
|
376
|
+
"severity": "high",
|
|
377
|
+
"possibleCauses": [
|
|
378
|
+
"ProcessExecute con valor inválido",
|
|
379
|
+
"Error de tipeo en nombre del proceso"
|
|
380
|
+
],
|
|
381
|
+
"solutions": [
|
|
382
|
+
"Usar procesos válidos: prices, cancel, inventory, clients, status",
|
|
383
|
+
"Verificar documentación de procesos SFTP disponibles"
|
|
384
|
+
],
|
|
385
|
+
"relatedFields": ["ProcessExecute"],
|
|
386
|
+
"validProcesses": ["prices", "cancel", "inventory", "clients", "status"],
|
|
387
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
388
|
+
},
|
|
389
|
+
|
|
390
|
+
"ACCOUNT_018": {
|
|
391
|
+
"code": "ACCOUNT_018",
|
|
392
|
+
"httpStatus": 404,
|
|
393
|
+
"message": "Account not found",
|
|
394
|
+
"description": "La cuenta especificada no existe en el sistema",
|
|
395
|
+
"context": "Búsqueda de cuenta para configuración",
|
|
396
|
+
"category": "Configuración SFTP",
|
|
397
|
+
"severity": "high",
|
|
398
|
+
"possibleCauses": [
|
|
399
|
+
"AccountName no existe",
|
|
400
|
+
"Cuenta eliminada o inactiva",
|
|
401
|
+
"Error en el nombre de la cuenta"
|
|
402
|
+
],
|
|
403
|
+
"solutions": [
|
|
404
|
+
"Verificar que la cuenta existe",
|
|
405
|
+
"Crear la cuenta si es necesario",
|
|
406
|
+
"Confirmar el AccountName correcto"
|
|
407
|
+
],
|
|
408
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
409
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
410
|
+
},
|
|
411
|
+
|
|
412
|
+
"ACCOUNT_019": {
|
|
413
|
+
"code": "ACCOUNT_019",
|
|
414
|
+
"httpStatus": 400,
|
|
415
|
+
"message": "Warehouse is required",
|
|
416
|
+
"description": "El campo Warehouse es requerido para procesos de inventario SFTP",
|
|
417
|
+
"context": "Validación de configuración de inventario SFTP",
|
|
418
|
+
"category": "Configuración SFTP",
|
|
419
|
+
"severity": "high",
|
|
420
|
+
"possibleCauses": [
|
|
421
|
+
"ProcessExecute=inventory sin Warehouse",
|
|
422
|
+
"Warehouse con valor null o vacío"
|
|
423
|
+
],
|
|
424
|
+
"solutions": [
|
|
425
|
+
"Incluir Warehouse para procesos de inventario",
|
|
426
|
+
"Verificar configuración de almacenes disponibles"
|
|
427
|
+
],
|
|
428
|
+
"relatedFields": ["Warehouse", "ProcessExecute"],
|
|
429
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
430
|
+
},
|
|
431
|
+
|
|
432
|
+
"ACCOUNT_020": {
|
|
433
|
+
"code": "ACCOUNT_020",
|
|
434
|
+
"httpStatus": 400,
|
|
435
|
+
"message": "Warehouse not found in the account configuration",
|
|
436
|
+
"description": "El almacén especificado no está configurado en la cuenta",
|
|
437
|
+
"context": "Validación de almacenes configurados",
|
|
438
|
+
"category": "Configuración SFTP",
|
|
439
|
+
"severity": "medium",
|
|
440
|
+
"possibleCauses": [
|
|
441
|
+
"Warehouse no existe en ChannelWarehouse",
|
|
442
|
+
"Error de tipeo en nombre del almacén",
|
|
443
|
+
"Configuración de almacenes incompleta"
|
|
444
|
+
],
|
|
445
|
+
"solutions": [
|
|
446
|
+
"Configurar el almacén en ChannelWarehouse",
|
|
447
|
+
"Verificar nombres de almacenes disponibles",
|
|
448
|
+
"Actualizar configuración de la cuenta"
|
|
449
|
+
],
|
|
450
|
+
"relatedFields": ["ChannelWarehouse", "Warehouse"],
|
|
451
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
452
|
+
},
|
|
453
|
+
|
|
454
|
+
"ACCOUNT_021": {
|
|
455
|
+
"code": "ACCOUNT_021",
|
|
456
|
+
"httpStatus": 400,
|
|
457
|
+
"message": "SFTP Config could not be created",
|
|
458
|
+
"description": "Error al crear la configuración SFTP en DynamoDB",
|
|
459
|
+
"context": "Creación de configuración SFTP",
|
|
460
|
+
"category": "Configuración SFTP",
|
|
461
|
+
"severity": "high",
|
|
462
|
+
"possibleCauses": [
|
|
463
|
+
"Error de conexión a DynamoDB",
|
|
464
|
+
"Permisos insuficientes en tabla SFTP",
|
|
465
|
+
"Configuración SFTP duplicada"
|
|
466
|
+
],
|
|
467
|
+
"solutions": [
|
|
468
|
+
"Verificar conectividad con DynamoDB",
|
|
469
|
+
"Revisar permisos IAM para SFTP_INBOUND_DATA_TABLE",
|
|
470
|
+
"Usar configuración única de Directory/ProcessExecute"
|
|
471
|
+
],
|
|
472
|
+
"relatedTables": ["SFTP_INBOUND_DATA_TABLE"],
|
|
473
|
+
"relatedEndpoints": ["POST /account/sftp"]
|
|
474
|
+
},
|
|
475
|
+
|
|
476
|
+
"ACCOUNT_022": {
|
|
477
|
+
"code": "ACCOUNT_022",
|
|
478
|
+
"httpStatus": 500,
|
|
479
|
+
"message": "Error in properties and VTriggers",
|
|
480
|
+
"description": "Schema VTEX tiene campos requeridos faltantes",
|
|
481
|
+
"context": "Validación de schemas VTEX",
|
|
482
|
+
"category": "Schemas y Hooks VTEX",
|
|
483
|
+
"severity": "high",
|
|
484
|
+
"possibleCauses": [
|
|
485
|
+
"Schema sin Properties definidas",
|
|
486
|
+
"Schema sin VTriggers configurados",
|
|
487
|
+
"Estructura de schema incompleta"
|
|
488
|
+
],
|
|
489
|
+
"solutions": [
|
|
490
|
+
"Configurar Properties en el schema",
|
|
491
|
+
"Definir VTriggers para el schema",
|
|
492
|
+
"Verificar estructura completa del schema"
|
|
493
|
+
],
|
|
494
|
+
"relatedFields": ["Properties", "VTriggers"],
|
|
495
|
+
"relatedTables": ["SCHEMAS_VTEX_TABLE"],
|
|
496
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
497
|
+
},
|
|
498
|
+
|
|
499
|
+
"ACCOUNT_023": {
|
|
500
|
+
"code": "ACCOUNT_023",
|
|
501
|
+
"httpStatus": 400,
|
|
502
|
+
"message": "Error retrieving schema email",
|
|
503
|
+
"description": "Error al recuperar la configuración del schema de email",
|
|
504
|
+
"context": "Recuperación de schemas VTEX",
|
|
505
|
+
"category": "Schemas y Hooks VTEX",
|
|
506
|
+
"severity": "medium",
|
|
507
|
+
"possibleCauses": [
|
|
508
|
+
"Schema no existe en el sistema",
|
|
509
|
+
"Error de conexión a DynamoDB",
|
|
510
|
+
"Permisos insuficientes para schemas"
|
|
511
|
+
],
|
|
512
|
+
"solutions": [
|
|
513
|
+
"Verificar que el schema existe",
|
|
514
|
+
"Revisar conectividad y permisos",
|
|
515
|
+
"Crear el schema si es necesario"
|
|
516
|
+
],
|
|
517
|
+
"relatedTables": ["SCHEMAS_VTEX_TABLE"],
|
|
518
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
519
|
+
},
|
|
520
|
+
|
|
521
|
+
"ACCOUNT_024": {
|
|
522
|
+
"code": "ACCOUNT_024",
|
|
523
|
+
"httpStatus": 500,
|
|
524
|
+
"message": "Error in Filter and Hook",
|
|
525
|
+
"description": "Hook VTEX tiene campos requeridos faltantes",
|
|
526
|
+
"context": "Validación de hooks VTEX",
|
|
527
|
+
"category": "Schemas y Hooks VTEX",
|
|
528
|
+
"severity": "high",
|
|
529
|
+
"possibleCauses": [
|
|
530
|
+
"Hook sin Filter definido",
|
|
531
|
+
"Hook sin configuración Hook",
|
|
532
|
+
"Estructura de hook incompleta"
|
|
533
|
+
],
|
|
534
|
+
"solutions": [
|
|
535
|
+
"Configurar Filter en el hook",
|
|
536
|
+
"Definir configuración Hook",
|
|
537
|
+
"Verificar estructura completa del hook"
|
|
538
|
+
],
|
|
539
|
+
"relatedFields": ["Filter", "Hook"],
|
|
540
|
+
"relatedTables": ["HOOKS_VTEX_TABLE"],
|
|
541
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
542
|
+
},
|
|
543
|
+
|
|
544
|
+
"ACCOUNT_025": {
|
|
545
|
+
"code": "ACCOUNT_025",
|
|
546
|
+
"httpStatus": 400,
|
|
547
|
+
"message": "Error retrieving hook",
|
|
548
|
+
"description": "Error al recuperar la configuración del hook",
|
|
549
|
+
"context": "Recuperación de hooks VTEX",
|
|
550
|
+
"category": "Schemas y Hooks VTEX",
|
|
551
|
+
"severity": "medium",
|
|
552
|
+
"possibleCauses": [
|
|
553
|
+
"Hook no existe en el sistema",
|
|
554
|
+
"Error de conexión a DynamoDB",
|
|
555
|
+
"Permisos insuficientes para hooks"
|
|
556
|
+
],
|
|
557
|
+
"solutions": [
|
|
558
|
+
"Verificar que el hook existe",
|
|
559
|
+
"Revisar conectividad y permisos",
|
|
560
|
+
"Crear el hook si es necesario"
|
|
561
|
+
],
|
|
562
|
+
"relatedTables": ["HOOKS_VTEX_TABLE"],
|
|
563
|
+
"relatedEndpoints": ["POST /account/create"]
|
|
564
|
+
},
|
|
565
|
+
|
|
566
|
+
"ACCOUNT_026": {
|
|
567
|
+
"code": "ACCOUNT_026",
|
|
568
|
+
"httpStatus": 500,
|
|
569
|
+
"message": "Something went wrong, please check the data.",
|
|
570
|
+
"description": "Error interno del sistema durante la operación",
|
|
571
|
+
"context": "Error general del sistema",
|
|
572
|
+
"category": "Errores del Sistema",
|
|
573
|
+
"severity": "critical",
|
|
574
|
+
"possibleCauses": [
|
|
575
|
+
"Error no controlado en el código",
|
|
576
|
+
"Fallo de servicios dependientes",
|
|
577
|
+
"Datos corruptos o inconsistentes"
|
|
578
|
+
],
|
|
579
|
+
"solutions": [
|
|
580
|
+
"Revisar logs detallados del error",
|
|
581
|
+
"Verificar estado de servicios dependientes",
|
|
582
|
+
"Contactar soporte técnico con detalles del error"
|
|
583
|
+
],
|
|
584
|
+
"relatedEndpoints": ["POST /account/create", "POST /account/sftp"]
|
|
585
|
+
},
|
|
586
|
+
|
|
587
|
+
"ACCOUNT_027": {
|
|
588
|
+
"code": "ACCOUNT_027",
|
|
589
|
+
"httpStatus": 400,
|
|
590
|
+
"message": "Account name (an) parameter is required",
|
|
591
|
+
"description": "El parámetro 'an' (AccountName) es requerido en la URL",
|
|
592
|
+
"context": "Validación de parámetros de URL",
|
|
593
|
+
"category": "Validación de Entrada",
|
|
594
|
+
"severity": "high",
|
|
595
|
+
"possibleCauses": [
|
|
596
|
+
"Parámetro 'an' faltante en pathParameters",
|
|
597
|
+
"URL malformada",
|
|
598
|
+
"Error en routing de API Gateway"
|
|
599
|
+
],
|
|
600
|
+
"solutions": [
|
|
601
|
+
"Incluir parámetro 'an' en la URL",
|
|
602
|
+
"Verificar formato de URL: /account/{an}",
|
|
603
|
+
"Confirmar configuración de API Gateway"
|
|
604
|
+
],
|
|
605
|
+
"relatedEndpoints": ["GET /account/{an}", "DELETE /account/{an}"]
|
|
606
|
+
},
|
|
607
|
+
|
|
608
|
+
"ACCOUNT_028": {
|
|
609
|
+
"code": "ACCOUNT_028",
|
|
610
|
+
"httpStatus": 404,
|
|
611
|
+
"message": "Account '{accountName}' not found",
|
|
612
|
+
"description": "La cuenta especificada no existe para operaciones de consulta",
|
|
613
|
+
"context": "Búsqueda de cuenta específica",
|
|
614
|
+
"category": "Consultas de Cuenta",
|
|
615
|
+
"severity": "medium",
|
|
616
|
+
"possibleCauses": [
|
|
617
|
+
"AccountName no existe en el sistema",
|
|
618
|
+
"Cuenta eliminada",
|
|
619
|
+
"Error de tipeo en AccountName"
|
|
620
|
+
],
|
|
621
|
+
"solutions": [
|
|
622
|
+
"Verificar que la cuenta existe",
|
|
623
|
+
"Confirmar el AccountName correcto",
|
|
624
|
+
"Crear la cuenta si es necesario"
|
|
625
|
+
],
|
|
626
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
627
|
+
"relatedEndpoints": ["GET /account/{an}", "DELETE /account/{an}"]
|
|
628
|
+
},
|
|
629
|
+
|
|
630
|
+
"ACCOUNT_029": {
|
|
631
|
+
"code": "ACCOUNT_029",
|
|
632
|
+
"httpStatus": 404,
|
|
633
|
+
"message": "No accounts found for parent account '{parentAccountName}'",
|
|
634
|
+
"description": "No se encontraron cuentas asociadas a la cuenta padre especificada",
|
|
635
|
+
"context": "Búsqueda de cuentas por cuenta padre",
|
|
636
|
+
"category": "Consultas de Cuenta",
|
|
637
|
+
"severity": "low",
|
|
638
|
+
"possibleCauses": [
|
|
639
|
+
"ParentAccountName no tiene cuentas asociadas",
|
|
640
|
+
"Todas las cuentas fueron eliminadas",
|
|
641
|
+
"Error en configuración de relación padre-hijo"
|
|
642
|
+
],
|
|
643
|
+
"solutions": [
|
|
644
|
+
"Verificar cuentas asociadas al ParentAccountName",
|
|
645
|
+
"Crear cuentas hijo si es necesario",
|
|
646
|
+
"Revisar configuración de jerarquía de cuentas"
|
|
647
|
+
],
|
|
648
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
649
|
+
"relatedEndpoints": ["GET /account?parent={parentAccountName}"]
|
|
650
|
+
},
|
|
651
|
+
|
|
652
|
+
"ACCOUNT_030": {
|
|
653
|
+
"code": "ACCOUNT_030",
|
|
654
|
+
"httpStatus": 500,
|
|
655
|
+
"message": "Error retrieving accounts",
|
|
656
|
+
"description": "Error interno al recuperar información de cuentas",
|
|
657
|
+
"context": "Operaciones de consulta de cuentas",
|
|
658
|
+
"category": "Consultas de Cuenta",
|
|
659
|
+
"severity": "high",
|
|
660
|
+
"possibleCauses": [
|
|
661
|
+
"Error de conexión a DynamoDB",
|
|
662
|
+
"Permisos insuficientes",
|
|
663
|
+
"Error en consulta de base de datos"
|
|
664
|
+
],
|
|
665
|
+
"solutions": [
|
|
666
|
+
"Verificar conectividad con DynamoDB",
|
|
667
|
+
"Revisar permisos IAM",
|
|
668
|
+
"Consultar logs detallados del error"
|
|
669
|
+
],
|
|
670
|
+
"relatedTables": ["ACCOUNT_DATA_CONFIG_TABLE"],
|
|
671
|
+
"relatedEndpoints": ["GET /account", "GET /account/{an}"]
|
|
672
|
+
}
|
|
673
|
+
},
|
|
674
|
+
|
|
675
|
+
"errorCategories": {
|
|
676
|
+
"Validación de Entrada": {
|
|
677
|
+
"description": "Errores de validación de datos de entrada y parámetros",
|
|
678
|
+
"codes": ["ACCOUNT_001", "ACCOUNT_002", "ACCOUNT_027"],
|
|
679
|
+
"severity": "high",
|
|
680
|
+
"commonSolutions": [
|
|
681
|
+
"Verificar estructura del JSON",
|
|
682
|
+
"Validar campos requeridos",
|
|
683
|
+
"Confirmar Content-Type correcto"
|
|
684
|
+
]
|
|
685
|
+
},
|
|
686
|
+
"Creación de Cuenta/Cliente": {
|
|
687
|
+
"description": "Errores durante el proceso de creación de cuentas y clientes",
|
|
688
|
+
"codes": ["ACCOUNT_003", "ACCOUNT_004"],
|
|
689
|
+
"severity": "high",
|
|
690
|
+
"commonSolutions": [
|
|
691
|
+
"Verificar conectividad con DynamoDB",
|
|
692
|
+
"Revisar permisos IAM",
|
|
693
|
+
"Validar unicidad de identificadores"
|
|
694
|
+
]
|
|
695
|
+
},
|
|
696
|
+
"Coordenadas Geográficas": {
|
|
697
|
+
"description": "Errores de validación de coordenadas geográficas y regiones VTEX",
|
|
698
|
+
"codes": ["ACCOUNT_005", "ACCOUNT_006", "ACCOUNT_007", "ACCOUNT_008", "ACCOUNT_009", "ACCOUNT_010"],
|
|
699
|
+
"severity": "medium",
|
|
700
|
+
"commonSolutions": [
|
|
701
|
+
"Verificar configuración de coordenadas",
|
|
702
|
+
"Validar credenciales VTEX",
|
|
703
|
+
"Confirmar cobertura geográfica"
|
|
704
|
+
]
|
|
705
|
+
},
|
|
706
|
+
"Seller Email Sharing": {
|
|
707
|
+
"description": "Errores de configuración de políticas de email sharing para sellers",
|
|
708
|
+
"codes": ["ACCOUNT_011", "ACCOUNT_012", "ACCOUNT_013", "ACCOUNT_014", "ACCOUNT_015"],
|
|
709
|
+
"severity": "high",
|
|
710
|
+
"commonSolutions": [
|
|
711
|
+
"Verificar configuración de seller",
|
|
712
|
+
"Validar credenciales VTEX",
|
|
713
|
+
"Confirmar registro en marketplace"
|
|
714
|
+
]
|
|
715
|
+
},
|
|
716
|
+
"Configuración SFTP": {
|
|
717
|
+
"description": "Errores de configuración de procesos SFTP",
|
|
718
|
+
"codes": ["ACCOUNT_016", "ACCOUNT_017", "ACCOUNT_018", "ACCOUNT_019", "ACCOUNT_020", "ACCOUNT_021"],
|
|
719
|
+
"severity": "high",
|
|
720
|
+
"commonSolutions": [
|
|
721
|
+
"Verificar procesos SFTP válidos",
|
|
722
|
+
"Validar configuración de almacenes",
|
|
723
|
+
"Confirmar permisos de DynamoDB"
|
|
724
|
+
]
|
|
725
|
+
},
|
|
726
|
+
"Schemas y Hooks VTEX": {
|
|
727
|
+
"description": "Errores de configuración de schemas y hooks de VTEX",
|
|
728
|
+
"codes": ["ACCOUNT_022", "ACCOUNT_023", "ACCOUNT_024", "ACCOUNT_025"],
|
|
729
|
+
"severity": "medium",
|
|
730
|
+
"commonSolutions": [
|
|
731
|
+
"Verificar estructura de schemas",
|
|
732
|
+
"Validar configuración de hooks",
|
|
733
|
+
"Confirmar existencia de recursos"
|
|
734
|
+
]
|
|
735
|
+
},
|
|
736
|
+
"Consultas de Cuenta": {
|
|
737
|
+
"description": "Errores durante operaciones de consulta y recuperación de cuentas",
|
|
738
|
+
"codes": ["ACCOUNT_028", "ACCOUNT_029", "ACCOUNT_030"],
|
|
739
|
+
"severity": "medium",
|
|
740
|
+
"commonSolutions": [
|
|
741
|
+
"Verificar existencia de cuentas",
|
|
742
|
+
"Validar parámetros de consulta",
|
|
743
|
+
"Revisar permisos de lectura"
|
|
744
|
+
]
|
|
745
|
+
},
|
|
746
|
+
"Errores del Sistema": {
|
|
747
|
+
"description": "Errores generales del sistema no categorizados",
|
|
748
|
+
"codes": ["ACCOUNT_026"],
|
|
749
|
+
"severity": "critical",
|
|
750
|
+
"commonSolutions": [
|
|
751
|
+
"Revisar logs del sistema",
|
|
752
|
+
"Verificar estado de servicios",
|
|
753
|
+
"Contactar soporte técnico"
|
|
754
|
+
]
|
|
755
|
+
}
|
|
756
|
+
},
|
|
757
|
+
|
|
758
|
+
"severityLevels": {
|
|
759
|
+
"critical": {
|
|
760
|
+
"description": "Errores críticos que impiden el funcionamiento del sistema",
|
|
761
|
+
"responseTime": "Inmediato",
|
|
762
|
+
"escalation": "Soporte L3"
|
|
763
|
+
},
|
|
764
|
+
"high": {
|
|
765
|
+
"description": "Errores que impiden completar la operación solicitada",
|
|
766
|
+
"responseTime": "< 1 hora",
|
|
767
|
+
"escalation": "Soporte L2"
|
|
768
|
+
},
|
|
769
|
+
"medium": {
|
|
770
|
+
"description": "Errores que permiten workarounds o configuraciones alternativas",
|
|
771
|
+
"responseTime": "< 4 horas",
|
|
772
|
+
"escalation": "Soporte L1"
|
|
773
|
+
},
|
|
774
|
+
"low": {
|
|
775
|
+
"description": "Errores informativos o de configuración opcional",
|
|
776
|
+
"responseTime": "< 24 horas",
|
|
777
|
+
"escalation": "Documentación"
|
|
778
|
+
}
|
|
779
|
+
},
|
|
780
|
+
|
|
781
|
+
"troubleshootingGuide": {
|
|
782
|
+
"commonSteps": [
|
|
783
|
+
"1. Identificar el código de error específico",
|
|
784
|
+
"2. Revisar las posibles causas listadas",
|
|
785
|
+
"3. Aplicar las soluciones sugeridas en orden",
|
|
786
|
+
"4. Verificar logs detallados del sistema",
|
|
787
|
+
"5. Contactar soporte si el problema persiste"
|
|
788
|
+
],
|
|
789
|
+
"logLocations": [
|
|
790
|
+
"CloudWatch Logs: /aws/lambda/account-validation",
|
|
791
|
+
"CloudWatch Logs: /aws/lambda/services_nodeflow",
|
|
792
|
+
"DynamoDB CloudWatch Metrics"
|
|
793
|
+
],
|
|
794
|
+
"contactInfo": {
|
|
795
|
+
"support": "soporte-tecnico@empresa.com",
|
|
796
|
+
"documentation": "https://docs.internal.com/account-management",
|
|
797
|
+
"slack": "#account-management-support"
|
|
798
|
+
}
|
|
799
|
+
}
|
|
800
|
+
}
|
|
801
|
+
}
|