refacil-commerce-mcp 1.0.7 → 1.0.9

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 CHANGED
@@ -4,7 +4,7 @@ Servidor MCP (Model Context Protocol) generado automáticamente para la API refa
4
4
 
5
5
  ## 🚀 Características
6
6
 
7
- - **70 herramientas** generadas automáticamente desde la colección Postman
7
+ - **32 herramientas** generadas automáticamente desde la colección Postman
8
8
  - **Autenticación flexible**: Username/SecretKey con renovación automática de tokens
9
9
  - **Servidor HTTP** con Fastify
10
10
  - **Protocolo MCP** estándar para integración con IDEs
@@ -192,93 +192,6 @@ kubectl get pods -l app=refacil-commerce-mcp
192
192
 
193
193
  ## 🛠️ Herramientas Disponibles
194
194
 
195
- ### `admin_update_balance`
196
-
197
- ---
198
-
199
- ### Description
200
-
201
- It allows you to transfer funds from the main users money bag to the bag of the user who is being added. The token of the user who will be the beneficiary and the amount must be added.
202
-
203
- ---
204
-
205
- ### Request Body
206
-
207
- - userToken (string, required): The user token for which the balance will be updated
208
-
209
- - amount (number, required): Amount to be updated
210
-
211
-
212
- ---
213
-
214
- ### Response
215
-
216
- - `message`: String containing a message about the operation result (required)
217
-
218
- - `messageCode`: String code indicating the operation result (required)
219
-
220
- - `data`: Object containing additional response data.
221
-
222
- **Parámetros:**
223
-
224
- | Name | Type | Description |
225
- | --- | --- | --- |
226
- | userToken | string | Campo del body: userToken |
227
- | amount | number | Campo del body: amount |
228
-
229
- ### `admin_locations_states`
230
-
231
- ---
232
-
233
- ### Description
234
-
235
- Get all states, then you can search cities by state id in the /locations/cities/{stateId} service
236
-
237
- ---
238
-
239
- ### Request Body
240
-
241
- This endpoint does not require a request body.
242
-
243
- ---
244
-
245
- ### Response
246
-
247
- - `message`: String containing a message about the operation result (required)
248
-
249
- - `messageCode`: String code indicating the operation result (required)
250
-
251
- - `data`: Object containing additional response data (required)
252
-
253
- - `items`: Array of objects containing the states
254
-
255
- ### `admin_locations_cities`
256
-
257
- ---
258
-
259
- ### Description
260
-
261
- Get all cities by state id
262
-
263
- ---
264
-
265
- ### Parameters Path
266
-
267
- - stateId (number, required): State Id
268
-
269
-
270
- ---
271
-
272
- ### Response
273
-
274
- - `message`: String containing a message about the operation result (required)
275
-
276
- - `messageCode`: String code indicating the operation result (required)
277
-
278
- - `data`: Object containing additional response data (required)
279
-
280
- - `items`: Array of objects containing the cities by state id
281
-
282
195
  ### `auth_login_api`
283
196
 
284
197
  ---
@@ -289,1630 +202,152 @@ Get all cities by state id
289
202
 
290
203
  ### Description
291
204
 
292
- Allows API users to log in using their credentials. This operation authenticates the API user using 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. Make sure to include the token in the authorization header using the "Bearer" prefix in future requests. The response will include the token type ("Bearer") and the access token.
293
-
294
- ---
295
-
296
- ### Request Body
297
-
298
- - `username` (string) `required`\- Username for authentication.
299
-
300
- - `secretKey` (string) `required`\- Secret key for authentication
301
-
302
- - `saveSession` (boolean) - Flag that, if sent as `false`, allows the generated token to have an expiration of 12 hours.
303
-
304
-
305
- ---
306
-
307
- ### Response
308
-
309
- - `messageCode` (string) - Code for the message.
310
-
311
- - `message` (string) - The message from the response.
312
-
313
- - `data`
314
-
315
- - `tokenType` (string) - Type of the token (e.g., "Bearer").
316
-
317
- - `token` (string) - The access code. It will not expire, unless the `saveSession` field is sent with the value `false`.
318
-
319
- **Parámetros:**
320
-
321
- | Name | Type | Description |
322
- | --- | --- | --- |
323
- | username | string | Campo del body: username |
324
- | secretKey | string | Campo del body: secretKey |
325
-
326
- ### `commerce_register`
327
-
328
- ---
329
-
330
- ### Register Commerce
331
-
332
- ---
333
-
334
- #### Description
335
-
336
- Registers a new commerce in the system using the information provided in the request body. This method returns a response that includes the unique identifier of the user associated with the commerce.
337
-
338
- ---
339
-
340
- #### Request Body
341
-
342
- - `name` (string) `required`: Owner's name of the commerce.
343
-
344
- - `lastname` (string) `required`: Owner's last name of the commerce
345
-
346
- - `docType` (string)`required`: Document type of the commerce owner.
347
-
348
- - `docNumber` (string)`required`: Document number of the commerce owner.
349
-
350
- - expeditionDate (string): Expedition date of the document of the commerce owner. The date must have the following structure YYYY-MM-DD
351
-
352
- - `username` (string)`required`: Username of the commerce owner.
353
-
354
- - `cellphone` (string)`required`: Commerce owner's mobile phone number. Please enter a valid mobile phone number for Colombia. It must contain 10 digits and start with the prefix '3'.
355
-
356
- - `email` (string)`required`: Commerce owner's email.
357
-
358
- - `commerceType` (number): Identifier of the commerce type. To get valid values, consult the /base-info/commerce-types service. Make sure to provide a valid number for this field. This field is optional, and if not provided, it will default to "1," which corresponds to the "Store" commerce type.
359
-
360
- - `commerceName` (string)`required`: The name of the commerce.
361
-
362
- - latitude (number): Latitude of the commerce location.
363
-
364
- - longitude (number): Longitude of the commerce location.
365
-
366
- - `address` (string)`required`: Commerce address. Since the field is of type string, the address can be provided in any standard format.
367
-
368
- - `cityName` (string)`required`: City name where the commerce is located. It is recommended to enter only valid city names. If no matches are found, 'Bogota' will be used as the default city.
369
-
370
-
371
- ---
372
-
373
- #### Response Body
374
-
375
- - `message` (string): A message related to the response.
376
-
377
- - `messageCode` (string): A code associated with the message.
378
-
379
- - `data` (object): An object containing the following fields:
380
-
381
- - `tokenType` (string): The type of token.
382
-
383
- - `token` (string): The token for authentication. It will not expire.
384
-
385
- - `userId` (number): The unique identifier of the user associated with the commerce.
386
-
387
- - `message` (string): A message related to the response.
388
-
389
- **Parámetros:**
390
-
391
- | Name | Type | Description |
392
- | --- | --- | --- |
393
- | name | string | Campo del body: name |
394
- | lastname | string | Campo del body: lastname |
395
- | docType | string | Campo del body: docType |
396
- | docNumber | string | Campo del body: docNumber |
397
- | username | string | Campo del body: username |
398
- | cellphone | string | Campo del body: cellphone |
399
- | email | string | Campo del body: email |
400
- | commerceType | number | Campo del body: commerceType |
401
- | commerceName | string | Campo del body: commerceName |
402
- | address | string | Campo del body: address |
403
- | cityName | string | Campo del body: cityName |
404
- | balance | string | Campo del body: balance |
205
+ 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 `Authorization` header using the `Bearer` prefix. The response includes the token type (`Bearer`) and the access token.
405
206
 
406
- ### `commerce_get_info`
207
+ ### Rate limiting
407
208
 
408
- ---
209
+ To prevent abuse and repeated attempts in a short period, this endpoint applies rate limiting:
409
210
 
410
- ### Description
211
+ - **Per IP**: maximum **5 requests per minute** from the same IP address.
212
+ - **Per user**: maximum **5 requests every 5 minutes** for the same user.
213
+ - **Combined user + IP**: maximum **5 requests per minute** for the same user–IP combination.
411
214
 
412
- Retrieve detailed information about a commerce using its identification. This operation requires sending an object in the request body with the "userId" property specifying the user ID. The response will include information about balances, additional data, and more. Balances include: "tmpBalance" (Earnings Bag), "posBalance" (Multiproduct Bag), and "debt" (Debt Bag).
215
+ If these limits are exceeded, the API will temporarily reject additional calls, effectively asking the client to **wait a moment before trying again**.
413
216
 
414
217
  ---
415
218
 
416
219
  ### Request Body
417
220
 
418
- - userId (number, required): The user ID for which detailed information is to be retrieved.
419
-
420
-
421
- ---
422
-
423
- ### Response
424
-
425
- - `message`: String containing a message about the operation result (required)
221
+ - `username` (string) `required` - Username for authentication.
426
222
 
427
- - `messageCode`: String code indicating the operation result (required)
223
+ - `secretKey` (string) `required` - Secret key for authentication
428
224
 
429
- - `data`: Object containing additional response data (required)
225
+ - `saveSession` (boolean) - Flag that, if sent as `false`, allows the generated token to have an expiration of 12 hours.
430
226
 
431
- - `additionalData`: Object containing user-related data (required)
432
-
433
- - `username`: String representing the username (required)
434
-
435
- - `token`: String representing the token. It will not expire. (required)
436
-
437
- - `balances`: Object containing balance-related data (required)
438
-
439
- - `tmpBalance`: Number representing the temporary balance (required)
440
-
441
- - `posBalance`: Number representing the balance after the operation (required)
442
- debt: Number representing the debt amount (required)
443
-
444
- **Parámetros:**
445
-
446
- | Name | Type | Description |
447
- | --- | --- | --- |
448
- | userId | number | Campo del body: userId |
449
-
450
- ### `commerce_users`
451
-
452
- ---
453
-
454
- ### Description
455
-
456
- Retrieve a list of users associated with a commerce using the token provided in the request header. This method supports pagination and search by name or user id.
457
-
458
- ---
459
-
460
- ### Request Body
461
-
462
- This endpoint does not require a request body.
463
227
 
464
228
  ---
465
229
 
466
230
  ### Response
467
231
 
468
- - `message`: String containing a message about the operation result (required)
469
-
470
- - `messageCode`: String code indicating the operation result (required)
471
-
472
- - `data`: Object containing additional response data (required)
473
-
474
- - `items`: Array of objects containing the users associated with the commerce
475
-
476
- ### `commerce_updatebalance`
477
-
478
- ---
479
-
480
- ### Update Commerce Balance
481
-
482
- ---
483
-
484
- #### Description
485
-
486
- **UpdateBalance:**
487
-
488
- This service allows loading balance to the different merchants created, by deducting from the Parent Merchant’s balance pool. The transactions generated will be reflected in the reports assigned to the merchant within the portal provided by Super Pagos.
489
-
490
- The required sending parameters are the token and ID, which were returned when the merchant was created.
491
-
492
- ---
493
-
494
- #### Request Body Schema
495
-
496
- - `token` (string)`required`: Owner's balance of the commerce.
497
-
498
- - `balance` (number)`required`: Owner's balance of the commerce.
499
-
500
-
501
- ---
502
-
503
- #### Response Body Schema
504
-
505
- - `message` (string): A message related to the response.
506
-
507
- - `messageCode` (string): A code associated with the message.
508
-
509
- **Parámetros:**
510
-
511
- | Name | Type | Description |
512
- | --- | --- | --- |
513
- | token | string | Campo del body: token |
514
- | balance | number | Campo del body: balance |
515
-
516
- ### `base_info_commerce_types`
517
-
518
- ---
519
-
520
- ### Retrieve Commerce Types
521
-
522
- ---
523
-
524
- #### Description
525
-
526
- Retrieve the available commerce types in the application. This operation provides detailed information about the different types of commercial establishments that can operate on the platform.
527
-
528
- ---
529
-
530
- #### Request Body
531
-
532
- This endpoint does not require a request body.
533
-
534
- ---
535
-
536
- #### Response Body
537
-
538
- - `message` (string): A message indicating the status of the response.
539
-
540
- - `messageCode` (string): A code associated with the message.
541
-
542
- - `data` (array): An array containing the commerce types information.
543
-
544
- - `id` (number): The unique identifier for the commerce type.
545
-
546
- - `name` (string): The name of the commerce type.
547
-
548
- ### `report_details`
549
-
550
- ---
551
-
552
- ### Retrieve Commerce Report Details
553
-
554
- ---
555
-
556
- #### Description
557
-
558
- Get details to build a report. This service is responsible for returning the necessary details to generate a report. To provide more context about the service, it will return an array of objects. Each object in this array will contain attributes that are essential for the construction of a report. These attributes may include, but are not limited to, type of report, the bag to consult, options to load in a select and other relevant data that are needed for a complete and detailed report. The use of this method will facilitate the generation of reports by providing all the necessary data in a structured and easy-to-use way.
559
-
560
- ---
561
-
562
- #### Request Body
563
-
564
- - No request body is required for this GET request.
232
+ - `messageCode` (string) - Code for the message.
565
233
 
234
+ - `message` (string) - The message from the response.
235
+
236
+ - `data`
237
+
238
+ - `tokenType` (string) - Type of the token (e.g., "Bearer").
239
+
240
+ - `token` (string) - The access code. It will not expire, unless the `saveSession` field is sent with the value `false`.
241
+
566
242
 
567
- ---
568
-
569
- #### Response Body
570
-
571
- - `description` (string, optional): Description of the commerce report.
572
-
573
- - `form` (object):
574
-
575
- - `fields` (array):
576
-
577
- - `name` (string): Name of the field.
578
-
579
- - `type` (string): Type of the field.
580
-
581
- - `options` (array):
582
-
583
- - `label` (string): Label for the option.
584
-
585
- - `value` (null): Value of the option.
586
-
587
- - `label` (string): Label for the field.
588
-
589
- - `placeholder` (string): Placeholder for the field.
590
-
591
- - `required` (boolean): Indicates if the field is required.
592
-
593
- - `bag` (string): Bag information.
594
-
595
- - `typeReport` (string): Type of the report.
596
-
597
- - `endpoint` (string): The endpoint for the commerce report generate.
598
-
599
- ### `report_generate`
600
-
601
- ---
602
-
603
- ### Sales report
604
-
605
- ---
606
-
607
- #### Description
608
-
609
- This service is responsible for generating different types of reports depending on the filters that are sent.
610
-
611
- #### Request Body
612
-
613
- - `filters` (object, `required`): Filters for the report
614
-
615
- - `dateStart` (string, `required`)
616
-
617
- - `dateEnd` (string, `required`)
618
-
619
- - `carrierId` (null, optional)
620
-
621
- - `number` (string, optional)
622
-
623
- - `status` (string, optional)
624
-
625
- - `bag` (string, optional)
626
-
627
- - `typeReport` (string, required): Type of the report
628
-
629
-
630
- ---
631
-
632
- #### Response
633
-
634
- - `messageCode` (string)
635
-
636
- - `message` (string)
637
-
638
- - `data` (object)
639
-
640
- - `title` (string)
641
-
642
- - `header` (array of strings)
643
-
644
- - `data` (array of arrays)
645
-
646
- **Parámetros:**
647
-
648
- | Name | Type | Description |
649
- | --- | --- | --- |
650
- | filters | object | Campo del body: filters |
651
- | typeReport | string | Campo del body: typeReport |
652
-
653
- ### `generate_purchase_report`
654
-
655
- ---
656
-
657
- # Purchase report
658
-
659
- ---
660
-
661
- ### Description
662
-
663
- This service is responsible for generating different types of reports depending on the filters that are sent.
664
-
665
- ---
666
-
667
- ## Request Body
668
-
669
- - `filters` (object, `required`): Filters for the report
670
-
671
- - `dateStart` (string, `required`): Start date for the report.
672
-
673
- - `dateEnd` (string, `required`): End date for the report.
674
-
675
- - `carrierId` (string, optional): ID of the carrier.
676
-
677
- - `number` (string, optional): Commerce number.
678
-
679
- - `status` (string, optional): Status of the commerce.
680
-
681
- - `bag` (string, optional): Bag information.
682
-
683
- - `typeReport` (string, `required`): Type of the report.
684
-
685
-
686
- ---
687
-
688
- ## Response
689
-
690
- - `messageCode` (string): Code for the message.
691
-
692
- - `message` (string): Details of the message.
693
-
694
- - `data` (object)
695
-
696
- - `title` (string): Title of the report.
697
-
698
- - `header` (array of strings): Headers for the report data.
699
-
700
- - `total` (number): Total count of the report data.
701
-
702
- - `data` (array of arrays): Report data.
703
-
704
- **Parámetros:**
705
-
706
- | Name | Type | Description |
707
- | --- | --- | --- |
708
- | filters | object | Campo del body: filters |
709
- | typeReport | string | Campo del body: typeReport |
710
-
711
- ### `generate_statement_report`
712
-
713
- ---
714
-
715
- ### Statement report
716
-
717
- ---
718
-
719
- #### Description
720
-
721
- This endpoint allows you to generate a report with the specified filters and report type.
722
-
723
- ---
724
-
725
- #### Request Body
726
-
727
- - Type: JSON
728
-
729
-
730
-
731
- ---
732
-
733
- #### Response
734
-
735
- - Type: JSON
736
-
737
-
738
- | Property | Type | Description |
739
- | --- | --- | --- |
740
- | messageCode | string | A code associated with the response message. |
741
- | message | string | A human-readable message providing information about the response. |
742
- | data | object | An object containing report title, header, and totals. |
743
- | title | string | The title of the report. |
744
- | header | array | An array containing report headers. |
745
- | totals | object | An object containing various total amounts for the report. |
746
- | data | array | An array containing report data. |
747
-
748
- **Note**: The actual data in the response may vary based on the report generated.
749
-
750
- **Parámetros:**
751
-
752
- | Name | Type | Description |
753
- | --- | --- | --- |
754
- | filters | object | Campo del body: filters |
755
- | typeReport | string | Campo del body: typeReport |
756
-
757
- ### `generate_payment_report`
758
-
759
- ---
760
-
761
- ### Payment report
762
-
763
- ---
764
-
765
- #### Description
766
-
767
- This service is responsible for generating different types of reports depending on the filters that are sent.
768
-
769
- ---
770
-
771
- #### Request Body
772
-
773
- - Type: JSON
774
-
775
-
776
-
777
- #### Response
778
-
779
- - Type: JSON
780
-
781
- **Parámetros:**
782
-
783
- | Name | Type | Description |
784
- | --- | --- | --- |
785
- | filters | object | Campo del body: filters |
786
- | typeReport | string | Campo del body: typeReport |
787
-
788
- ### `generate_transfer_report`
789
-
790
- ---
791
-
792
- # Transfer report
793
-
794
- ---
795
-
796
- ## Description
797
-
798
- This endpoint allows you to generate a report based on the specified filters.
799
-
800
- ---
801
-
802
- ## Request Body
803
-
804
- - `filters` (object, required): An object containing the filters for the report.
805
-
806
- - `dateStart` (string, required): The start date for the report.
807
-
808
- - `dateEnd` (string, required): The end date for the report.
809
-
810
- - `carrierId` (null): The ID of the carrier for the report.
811
-
812
- - `number` (string): The report number.
813
-
814
- - `status` (string): The status for the report.
815
-
816
- - `bag` (string): The bag for the report.
817
-
818
- - `typeReport` (string, required): The type of report to be generated.
819
-
820
-
821
- ---
822
-
823
- ## Response
824
-
825
- - `messageCode` (string): The code for the message.
826
-
827
- - `message` (string): The message related to the response.
828
-
829
- - `data` (object): An object containing the report data.
830
-
831
- - `title` (string): The title of the report.
832
-
833
- - `header` (array): An array containing the headers for the report data.
834
-
835
- - `data` (array): An array containing the report data.
836
-
837
- **Parámetros:**
838
-
839
- | Name | Type | Description |
840
- | --- | --- | --- |
841
- | filters | object | Campo del body: filters |
842
- | typeReport | string | Campo del body: typeReport |
843
-
844
- ### `generate_reverse_report`
845
-
846
- ---
847
-
848
- # Reverse report
849
-
850
- ---
851
-
852
- ## Description
853
-
854
- This endpoint allows you to generate a report based on the specified filters.
855
-
856
- ---
857
-
858
- ## Request Body
859
-
860
- - `filters` (object, required): An object containing the filters for the report.
861
-
862
- - `dateStart` (string, required): The start date for the report.
863
-
864
- - `dateEnd` (string, required): The end date for the report.
865
-
866
- - `carrierId` (null): The ID of the carrier for the report.
867
-
868
- - `number` (string): The report number.
869
-
870
- - `status` (string): The status for the report.
871
-
872
- - `bag` (string): The bag for the report.
873
-
874
- - `typeReport` (string, required): The type of report to be generated.
875
-
876
-
877
- ---
878
-
879
- ## Response
880
-
881
- - `messageCode` (string): The code for the message.
882
-
883
- - `message` (string): The message related to the response.
884
-
885
- - `data` (object): An object containing the report data.
886
-
887
- - `title` (string): The title of the report.
888
-
889
- - `header` (array): An array containing the headers for the report data.
890
-
891
- - `data` (array): An array containing the report data.
892
-
893
- **Parámetros:**
894
-
895
- | Name | Type | Description |
896
- | --- | --- | --- |
897
- | filters | object | Campo del body: filters |
898
- | typeReport | string | Campo del body: typeReport |
899
-
900
- ### `generate_consumption_report`
901
-
902
- ---
903
-
904
- # Consumption report
905
-
906
- ---
907
-
908
- ## Description
909
-
910
- This endpoint allows you to generate a report based on the specified filters.
911
-
912
- ---
913
-
914
- ## Request Body
915
-
916
- - `filters` (object, required): An object containing the filters for the report.
917
-
918
- - `dateStart` (string, required): The start date for the report.
919
-
920
- - `dateEnd` (string, required): The end date for the report.
921
-
922
- - `carrierId` (null): The ID of the carrier for the report.
923
-
924
- - `number` (string): The report number.
925
-
926
- - `status` (string): The status for the report.
927
-
928
- - `bag` (string): The bag for the report.
929
-
930
- - `typeReport` (string, required): The type of report to be generated.
931
-
932
-
933
- ---
934
-
935
- ## Response
936
-
937
- - `messageCode` (string): The code for the message.
938
-
939
- - `message` (string): The message related to the response.
940
-
941
- - `data` (object): An object containing the report data.
942
-
943
- - `title` (string): The title of the report.
944
-
945
- - `header` (array): An array containing the headers for the report data.
946
-
947
- - `data` (array): An array containing the report data.
948
-
949
- **Parámetros:**
950
-
951
- | Name | Type | Description |
952
- | --- | --- | --- |
953
- | filters | object | Campo del body: filters |
954
- | typeReport | string | Campo del body: typeReport |
955
-
956
- ### `payment_generate_resource`
957
-
958
- ---
959
-
960
- ### Description
961
-
962
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
963
-
964
- ---
965
-
966
- ### Request Body
967
-
968
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
969
-
970
- - `amount` (number, `required`): Amount of the resource to be generated.
971
-
972
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
973
-
974
- - `form` (object): Optional form associated with the resource.
975
-
976
- - `cellphone` (string): The cellphone number.
977
-
978
- - `customerReference` (string, `required`): A reference to the customer.
979
-
980
-
981
- ---
982
-
983
- ### Response Body
984
-
985
- - `message` (string): A message related to the response.
986
-
987
- - `messageCode` (string): A code related to the message.
988
-
989
- - `data` (object): An object containing the response data.
990
-
991
- - `message` (string): A message related to the response data.
992
-
993
- - `date` (number): The date related to the response data.
994
-
995
- - `payload` (object): An object containing the payload data.
996
-
997
- - `url` (string): The URL of the generated resource.
998
-
999
- - `reference` (string): The reference of the generated resource.
1000
-
1001
- - `resourceId` (string): The identifier of the generated resource.
1002
-
1003
- - `expiresIn` (string): The expiration time of the generated resource.
1004
-
1005
- - `type` (string): The type of the generated resource.
1006
-
1007
- - `data` (string): Additional data related to the generated resource.
1008
-
1009
- - `status` (number): The status of the generated resource.
1010
-
1011
- **Parámetros:**
1012
-
1013
- | Name | Type | Description |
1014
- | --- | --- | --- |
1015
- | productId | number | Campo del body: productId |
1016
- | amount | number | Campo del body: amount |
1017
- | moduleId | number | Campo del body: moduleId |
1018
- | form | object | Campo del body: form |
1019
- | customerReference | string | Campo del body: customerReference |
1020
-
1021
- ### `generate_resource_nequi`
1022
-
1023
- ---
1024
-
1025
- ### Description
1026
-
1027
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1028
-
1029
- ---
1030
-
1031
- ### Request Body
1032
-
1033
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1034
-
1035
- - `amount` (number, `required`): Amount of the resource to be generated.
1036
-
1037
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1038
-
1039
- - `form` (object): Optional form associated with the resource.
1040
-
1041
- - `cellphone` (string): The cellphone number.
1042
-
1043
- - `customerReference` (string, `required`): A reference to the customer.
1044
-
1045
-
1046
- ---
1047
-
1048
- ### Response Body
1049
-
1050
- - `message` (string): A message related to the response.
1051
-
1052
- - `messageCode` (string): A code associated with the message.
1053
-
1054
- - `data` (object): An object containing data related to the response.
1055
-
1056
- - `message` (string): A message related to the data.
1057
-
1058
- - `date` (number): The date associated with the data.
1059
-
1060
- - `payload` (object): An object containing the payload data.
1061
-
1062
- - `url` (string): The URL of the generated resource.
1063
-
1064
- - `reference` (string): The reference of the generated resource.
1065
-
1066
- - `resourceId` (string): The identifier of the generated resource.
1067
-
1068
- - `expiresIn` (string): The expiration time of the resource.
1069
-
1070
- - `type` (string): The type of the resource.
1071
-
1072
- - `data` (string): Additional data related to the resource.
1073
-
1074
- - `status` (number): The status of the resource.
1075
-
1076
- **Parámetros:**
1077
-
1078
- | Name | Type | Description |
1079
- | --- | --- | --- |
1080
- | productId | number | Campo del body: productId |
1081
- | amount | number | Campo del body: amount |
1082
- | moduleId | number | Campo del body: moduleId |
1083
- | form | object | Campo del body: form |
1084
- | customerReference | string | Campo del body: customerReference |
1085
-
1086
- ### `generate_resource_daviplata`
1087
-
1088
- ---
1089
-
1090
- ### Description
1091
-
1092
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1093
-
1094
- ---
1095
-
1096
- ### Request Body
1097
-
1098
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1099
-
1100
- - `amount` (number, `required`): Amount of the resource to be generated.
1101
-
1102
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1103
-
1104
- - `form` (object):
1105
-
1106
- - `typePerson` (string): Type of person.
1107
-
1108
- - `documentType` (string): Type of document.
1109
-
1110
- - `documentNumber` (string): Document number.
1111
-
1112
- - `name` (string): Name of the customer.
1113
-
1114
- - `email` (string): Email of the customer.
1115
-
1116
- - `cellphone` (string): Cellphone number of the customer.
1117
-
1118
- - `customerReference` (string, `required`): Reference related to the customer.
1119
-
1120
-
1121
- ---
1122
-
1123
- ### Response Body
1124
-
1125
- - `message` (string): A message related to the response.
1126
-
1127
- - `messageCode` (string): A code related to the message.
1128
-
1129
- - `data` (object):
1130
-
1131
- - `message` (string): A message related to the data.
1132
-
1133
- - `date` (number): Date related to the data.
1134
-
1135
- - `payload` (object):
1136
-
1137
- - `url` (string): The URL of the generated resource.
1138
-
1139
- - `reference` (string): Reference of the resource.
1140
-
1141
- - `resourceId` (string): Identifier of the resource.
1142
-
1143
- - `expiresIn` (string): Expiration time of the resource.
1144
-
1145
- - `type` (string): Type of the resource.
1146
-
1147
- - `data` (string): Additional data related to the resource.
1148
-
1149
- - `status` (number): Status of the resource.
1150
-
1151
- **Parámetros:**
1152
-
1153
- | Name | Type | Description |
1154
- | --- | --- | --- |
1155
- | productId | number | Campo del body: productId |
1156
- | amount | number | Campo del body: amount |
1157
- | moduleId | number | Campo del body: moduleId |
1158
- | form | object | Campo del body: form |
1159
- | customerReference | string | Campo del body: customerReference |
1160
-
1161
- ### `generate_resource_bancolombia`
1162
-
1163
- ### Generate Payment Resource
1164
-
1165
- ---
1166
-
1167
- #### Description
1168
-
1169
- Creates a payment resource in the system using the provided information.
1170
-
1171
- ---
1172
-
1173
- #### Request Body
1174
-
1175
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1176
-
1177
- - `amount` (number, `required`): Amount of the resource to be generated.
1178
-
1179
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1180
-
1181
- - `form` (object): Optional form associated with the resource.
1182
-
1183
- - `customerReference` (string): Customer reference information.
1184
-
1185
-
1186
- ---
1187
-
1188
- #### Response Body
1189
-
1190
- - `message` (string): A message related to the response.
1191
-
1192
- - `messageCode` (string): A code related to the message.
1193
-
1194
- - `data` (object): The response data.
1195
-
1196
- - `message` (string): A message related to the data.
1197
-
1198
- - `date` (number): The date related to the data.
1199
-
1200
- - `payload` (object): The payload data.
1201
-
1202
- - `url` (string): The URL of the generated resource.
1203
-
1204
- - `reference` (string): The reference of the resource.
1205
-
1206
- - `resourceId` (string): The identifier of the resource.
1207
-
1208
- - `expiresIn` (string): The expiration time of the resource.
1209
-
1210
- - `type` (string): The type of the resource.
1211
-
1212
- - `data` (string): Additional data related to the resource.
1213
-
1214
- - `status` (number): The status of the resource.
1215
-
1216
- **Parámetros:**
1217
-
1218
- | Name | Type | Description |
1219
- | --- | --- | --- |
1220
- | productId | number | Campo del body: productId |
1221
- | amount | number | Campo del body: amount |
1222
- | moduleId | number | Campo del body: moduleId |
1223
- | form | object | Campo del body: form |
1224
- | customerReference | string | Campo del body: customerReference |
1225
-
1226
- ### `generate_resource_nequi_22`
1227
-
1228
- ---
1229
-
1230
- ### Description
1231
-
1232
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1233
-
1234
- ---
1235
-
1236
- ### Request Body
1237
-
1238
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1239
-
1240
- - `amount` (number, `required`): Amount of the resource to be generated.
1241
-
1242
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1243
-
1244
- - `form` (object): Optional form associated with the resource.
1245
-
1246
- - `cellphone` (string): The cellphone number.
1247
-
1248
- - `customerReference` (string, `required`): A reference to the customer.
1249
-
1250
-
1251
- ---
1252
-
1253
- ### Response Body
1254
-
1255
- - `message` (string): A message related to the response.
1256
-
1257
- - `messageCode` (string): A code associated with the message.
1258
-
1259
- - `data` (object): An object containing data related to the response.
1260
-
1261
- - `message` (string): A message related to the data.
1262
-
1263
- - `date` (number): The date associated with the data.
1264
-
1265
- - `payload` (object): An object containing the payload data.
1266
-
1267
- - `url` (string): The URL of the generated resource.
1268
-
1269
- - `reference` (string): The reference of the generated resource.
1270
-
1271
- - `resourceId` (string): The identifier of the generated resource.
1272
-
1273
- - `expiresIn` (string): The expiration time of the resource.
1274
-
1275
- - `type` (string): The type of the resource.
1276
-
1277
- - `data` (string): Additional data related to the resource.
1278
-
1279
- - `status` (number): The status of the resource.
1280
-
1281
- **Parámetros:**
1282
-
1283
- | Name | Type | Description |
1284
- | --- | --- | --- |
1285
- | productId | number | Campo del body: productId |
1286
- | amount | number | Campo del body: amount |
1287
- | moduleId | number | Campo del body: moduleId |
1288
- | form | object | Campo del body: form |
1289
- | customerReference | string | Campo del body: customerReference |
1290
-
1291
- ### `generate_resource_daviplata_23`
1292
-
1293
- ---
1294
-
1295
- ### Description
1296
-
1297
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1298
-
1299
- ---
1300
-
1301
- ### Request Body
1302
-
1303
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1304
-
1305
- - `amount` (number, `required`): Amount of the resource to be generated.
1306
-
1307
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1308
-
1309
- - `form` (object):
1310
-
1311
- - `typePerson` (string): Type of person.
1312
-
1313
- - `documentType` (string): Type of document.
1314
-
1315
- - `documentNumber` (string): Document number.
1316
-
1317
- - `name` (string): Name of the customer.
1318
-
1319
- - `email` (string): Email of the customer.
1320
-
1321
- - `cellphone` (string): Cellphone number of the customer.
1322
-
1323
- - `customerReference` (string, `required`): Reference related to the customer.
1324
-
1325
-
1326
- ---
1327
-
1328
- ### Response Body
1329
-
1330
- - `message` (string): A message related to the response.
1331
-
1332
- - `messageCode` (string): A code related to the message.
1333
-
1334
- - `data` (object):
1335
-
1336
- - `message` (string): A message related to the data.
1337
-
1338
- - `date` (number): Date related to the data.
1339
-
1340
- - `payload` (object):
1341
-
1342
- - `url` (string): The URL of the generated resource.
1343
-
1344
- - `reference` (string): Reference of the resource.
1345
-
1346
- - `resourceId` (string): Identifier of the resource.
1347
-
1348
- - `expiresIn` (string): Expiration time of the resource.
1349
-
1350
- - `type` (string): Type of the resource.
1351
-
1352
- - `data` (string): Additional data related to the resource.
1353
-
1354
- - `status` (number): Status of the resource.
1355
-
1356
- **Parámetros:**
1357
-
1358
- | Name | Type | Description |
1359
- | --- | --- | --- |
1360
- | productId | number | Campo del body: productId |
1361
- | amount | number | Campo del body: amount |
1362
- | moduleId | number | Campo del body: moduleId |
1363
- | form | object | Campo del body: form |
1364
- | customerReference | string | Campo del body: customerReference |
1365
-
1366
- ### `generate_resource_pse`
1367
-
1368
- ---
1369
-
1370
- ### Generate Payment Resource
1371
-
1372
- ---
1373
-
1374
- #### Description
1375
-
1376
- This endpoint allows you to generate a payment resource in the system.
1377
-
1378
- ---
1379
-
1380
- #### Request Body
1381
-
1382
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1383
-
1384
- - `amount` (number, `required`): Amount of the resource to be generated.
1385
-
1386
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1387
-
1388
- - `form` (object): Optional form associated with the resource.
1389
-
1390
- - `bankId` (string): The ID of the bank.
1391
-
1392
- - `typePerson` (string): The type of person.
1393
-
1394
- - `documentType` (string): The type of document.
1395
-
1396
- - `documentNumber` (string): The document number.
1397
-
1398
- - `name` (string): The name of the customer.
1399
-
1400
- - `email` (string): The email of the customer.
1401
-
1402
- - `cellphone` (string): The cellphone number of the customer.
1403
-
1404
- - `customerReference` (string, `required`): The reference for the customer.
1405
-
1406
-
1407
- ---
1408
-
1409
- #### Response
1410
-
1411
- - `message` (string): A message related to the response.
1412
-
1413
- - `messageCode` (string): A code related to the message.
1414
-
1415
- - `data` (object):
1416
-
1417
- - `message` (string): A message related to the data.
1418
-
1419
- - `date` (number): The date of the response.
1420
-
1421
- - `payload` (object):
1422
-
1423
- - `url` (string): The URL of the generated resource.
1424
-
1425
- - `reference` (string): The reference of the generated resource.
1426
-
1427
- - `resourceId` (string): The identifier of the generated resource.
1428
-
1429
- - `expiresIn` (string): The expiration time of the resource.
1430
-
1431
- - `type` (string): The type of the resource.
1432
-
1433
- - `data` (string): Additional data related to the resource.
1434
-
1435
- - `status` (number): The status of the resource.
1436
-
1437
- **Parámetros:**
1438
-
1439
- | Name | Type | Description |
1440
- | --- | --- | --- |
1441
- | productId | number | Campo del body: productId |
1442
- | amount | number | Campo del body: amount |
1443
- | moduleId | number | Campo del body: moduleId |
1444
- | form | object | Campo del body: form |
1445
- | customerReference | string | Campo del body: customerReference |
1446
-
1447
- ### `generate_res_ban_dir_al_banco`
1448
-
1449
- ---
1450
-
1451
- ### Description
1452
-
1453
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1454
-
1455
- ---
1456
-
1457
- ### Request Body
1458
-
1459
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1460
-
1461
- - `amount` (number, `required`): Amount of the resource to be generated.
1462
-
1463
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1464
-
1465
- - `customerReference` (string, `required`): A reference related to the customer.
1466
-
1467
-
1468
- ---
1469
-
1470
- ### Response Body
1471
-
1472
- - `message` (string): A message related to the response.
1473
-
1474
- - `messageCode` (string): A code related to the message.
1475
-
1476
- - `data` (object)
1477
-
1478
- - `message` (string): A message related to the data.
1479
-
1480
- - `date` (number): The date related to the data.
1481
-
1482
- - `payload` (object)
1483
-
1484
- - `url` (string): The URL of the generated resource.
1485
-
1486
- - `reference` (string): The reference of the generated resource.
1487
-
1488
- - `resourceId` (string): The identifier of the generated resource.
1489
-
1490
- - `expiresIn` (string): The expiration time of the generated resource.
1491
-
1492
- - `type` (string): The type of the generated resource.
1493
-
1494
- - `data` (string): Additional data related to the generated resource.
1495
-
1496
- - `status` (number): The status of the generated resource.
1497
-
1498
- **Parámetros:**
1499
-
1500
- | Name | Type | Description |
1501
- | --- | --- | --- |
1502
- | productId | number | Campo del body: productId |
1503
- | amount | number | Campo del body: amount |
1504
- | moduleId | number | Campo del body: moduleId |
1505
- | customerReference | string | Campo del body: customerReference |
1506
-
1507
- ### `generate_res_ban_esc_qr`
1508
-
1509
- ---
1510
-
1511
- ### Generate Payment Resource
1512
-
1513
- ---
1514
-
1515
- #### Description
1516
-
1517
- Generates a payment resource in the system using the information provided in the request body.
1518
-
1519
- ---
1520
-
1521
- #### Request Body
1522
-
1523
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1524
-
1525
- - `amount` (number, `required`): Amount of the resource to be generated.
1526
-
1527
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1528
-
1529
- - `customerReference` (string, `required`): Reference to the customer.
1530
-
1531
-
1532
- ---
1533
-
1534
- #### Response
1535
-
1536
- The response is a JSON object with the following properties:
1537
-
1538
- - `message` (string): A message, if any.
1539
-
1540
- - `messageCode` (string): A code associated with the message.
1541
-
1542
- - `data` (object): The data object containing the following properties:
1543
-
1544
- - `message` (string): A message, if any.
1545
-
1546
- - `date` (number): The date associated with the response.
1547
-
1548
- - `payload` (object): The payload object containing the following properties:
1549
-
1550
- - `url` (string): The URL of the generated resource.
1551
-
1552
- - `reference` (string): The reference of the resource.
1553
-
1554
- - `resourceId` (string): The identifier of the resource.
1555
-
1556
- - `expiresIn` (string): The expiration time of the resource.
1557
-
1558
- - `type` (string): The type of resource.
1559
-
1560
- - `data` (string): Additional data associated with the resource.
1561
-
1562
- - `status` (number): The status of the resource.
1563
-
1564
- **Parámetros:**
1565
-
1566
- | Name | Type | Description |
1567
- | --- | --- | --- |
1568
- | productId | number | Campo del body: productId |
1569
- | amount | number | Campo del body: amount |
1570
- | moduleId | number | Campo del body: moduleId |
1571
- | customerReference | string | Campo del body: customerReference |
1572
-
1573
- ### `generate_resource_tarjeta_de_recaudo`
1574
-
1575
- ---
1576
-
1577
- ### Description
1578
-
1579
- Generates a payment resource in the system using the information provided in the request body. This method returns a response that includes details about the generated resource, such as the URL, reference, resource identifier, and expiration time.
1580
-
1581
- ---
1582
-
1583
- ### Request Body
1584
-
1585
- - `productId` (number, `required`): Identifier of the product for which the resource will be generated.
1586
-
1587
- - `moduleId` (number, `required`): Identifier of the module to which the generated resource will be associated.
1588
-
1589
- - `customerReference` (string): The reference of the customer.
1590
-
1591
-
1592
- ---
1593
-
1594
- ### Response
1595
-
1596
- - `message` (string): A message from the response.
1597
-
1598
- - `messageCode` (string): A code associated with the message.
1599
-
1600
- - `data` (object)
1601
-
1602
- - `message` (string): A message within the data object.
1603
-
1604
- - `date` (number): The date associated with the response.
1605
-
1606
- - `payload` (object)
1607
-
1608
- - `url` (string): The URL of the generated resource.
1609
-
1610
- - `reference` (string): The reference of the resource.
1611
-
1612
- - `resourceId` (string): The identifier of the resource.
1613
-
1614
- - `expiresIn` (string): The expiration time of the resource.
1615
-
1616
- - `type` (string): The type of the resource.
1617
-
1618
- - `data` (string): Additional data associated with the resource.
1619
-
1620
- - `status` (number): The status of the resource.
1621
-
1622
- **Parámetros:**
1623
-
1624
- | Name | Type | Description |
1625
- | --- | --- | --- |
1626
- | productId | number | Campo del body: productId |
1627
- | moduleId | number | Campo del body: moduleId |
1628
- | customerReference | string | Campo del body: customerReference |
1629
-
1630
- ### `payment_get_resource`
1631
-
1632
- ---
1633
-
1634
- ### Retrieve Payment Resource
1635
-
1636
- ---
1637
-
1638
- #### Description
1639
-
1640
- Retrieve a payment resource in the system using the provided customer reference as a parameter. This method returns a response that includes details about the retrieved resource.
1641
-
1642
- ---
1643
-
1644
- #### Request Body Schema
1645
-
1646
- - There is no request body for this GET request.
1647
-
1648
-
1649
- ---
1650
-
1651
- #### Response Body Schema
1652
-
1653
- - `message` (string): A message related to the response.
1654
-
1655
- - `messageCode` (string): A code associated with the message.
1656
-
1657
- - `data` (object)
1658
-
1659
- - `payload` (object)
1660
-
1661
- - `url` (string): The URL associated with the resource.
1662
-
1663
- - `reference` (string): The reference of the resource.
1664
-
1665
- - `resourceId` (string): The ID of the resource.
1666
-
1667
- - `expiresIn` (string): The expiration time of the resource.
1668
-
1669
- - `type` (string): The type of the resource.
1670
-
1671
- - `data` (string): Additional data related to the resource.
1672
-
1673
- - `status` (number): The status of the resource.
1674
-
1675
-
1676
- This method returns a response that includes details about the retrieved resource.
1677
-
1678
- ### `payment_pse_banks`
1679
-
1680
- ---
1681
-
1682
- ### PSE Banks
1683
-
1684
- ---
1685
-
1686
- #### Description
1687
-
1688
- This service allows you to obtain the banks available to make PSE payments.
1689
-
1690
- ---
1691
-
1692
- #### Request Body Schema
1693
-
1694
- - There is no request body for this GET request.
1695
-
1696
-
1697
- ---
1698
-
1699
- #### Response Body Schema
1700
-
1701
- - `message` (string): A message related to the response.
1702
-
1703
- - `messageCode` (string): A code associated with the message.
1704
-
1705
- - `data` (object)
1706
-
1707
- - `banks`: An array of object with the banks information (id, name and image)
1708
-
1709
- ### `product_list`
1710
-
1711
- ---
1712
-
1713
- ### Retrieve Product List
1714
-
1715
- Retrieve a list of active products in the system. This service provides detailed information about the available products for querying. You can filter the results using the optional "type" parameter.
1716
-
1717
- ---
1718
-
1719
- #### Query Parameters
1720
-
1721
- - `type` (optional): Type of products to list. If provided and set to "bills," it will list products related to invoices; otherwise, it will list all products except those related to invoices and packages.
1722
-
1723
-
1724
- **Example**:
1725
-
1726
- ```
1727
- type: bills
1728
-
1729
- ```
1730
-
1731
- ---
1732
-
1733
- #### Response
1734
-
1735
- The response of this request is a JSON schema representing the list of products. An example response schema is as follows:
1736
-
1737
- ``` json
1738
- {
1739
- "message": "",
1740
- "messageCode": "",
1741
- "data": [
1742
- {
1743
- "id": 0,
1744
- "categoryId": 0,
1745
- "name": "",
1746
- "needValidation": true,
1747
- "moduleId": 0,
1748
- "maxFixedTip": 0,
1749
- "description": "",
1750
- "amount": 0,
1751
- "sort": 0,
1752
- "meta": {},
1753
- "image": "",
1754
- "status": ""
1755
- }
1756
- ]
1757
- }
1758
-
1759
- ```
1760
-
1761
- Type of products to list. If provided and set to "bills," it will list products related to invoices; otherwise, it will list all products except those related to invoices and packages.
1762
-
1763
- _Example_ : bills
1764
-
1765
- ### `product_packages`
1766
-
1767
- ---
1768
-
1769
- ### Retrieve Available Packages
1770
-
1771
- ---
1772
-
1773
- #### Description
1774
-
1775
- This endpoint retrieves a list of available packages in the system. The response is in JSON format and provides detailed information about the packages, which may contain multiple products.
1776
-
1777
- **Note:** It is necessary to use this service to keep the packages updated for any changes that occur.
1778
-
1779
- ---
1780
-
1781
- #### Response
1782
-
1783
- The response for this request can be documented as a JSON schema:
1784
-
1785
- ``` json
1786
- {
1787
- "type": "object",
1788
- "properties": {
1789
- "message": {
1790
- "type": "string"
1791
- },
1792
- "messageCode": {
1793
- "type": "string"
1794
- },
1795
- "data": {
1796
- "type": "array",
1797
- "items": {
1798
- "type": "object",
1799
- "properties": {
1800
- "id": {
1801
- "type": "integer"
1802
- },
1803
- "name": {
1804
- "type": "string"
1805
- },
1806
- "description": {
1807
- "type": "string"
1808
- },
1809
- "categories": {
1810
- "type": "array",
1811
- "items": {
1812
- "type": "object",
1813
- "properties": {
1814
- "id": {
1815
- "type": "integer"
1816
- },
1817
- "name": {
1818
- "type": "string"
1819
- },
1820
- "description": {
1821
- "type": "string"
1822
- },
1823
- "products": {
1824
- "type": "array",
1825
- "items": {
1826
- "type": "object",
1827
- "properties": {
1828
- "id": {
1829
- "type": "integer"
1830
- },
1831
- "categoryId": {
1832
- "type": "integer"
1833
- },
1834
- "name": {
1835
- "type": "string"
1836
- },
1837
- "needValidation": {
1838
- "type": "boolean"
1839
- },
1840
- "moduleId": {
1841
- "type": "integer"
1842
- },
1843
- "maxFixedTip": {
1844
- "type": "integer"
1845
- },
1846
- "description": {
1847
- "type": "string"
1848
- },
1849
- "amount": {
1850
- "type": "integer"
1851
- },
1852
- "sort": {
1853
- "type": "integer"
1854
- },
1855
- "meta": {
1856
- "type": "object"
1857
- },
1858
- "image": {
1859
- "type": "string"
1860
- },
1861
- "status": {
1862
- "type": "string"
1863
- }
1864
- },
1865
- "required": [
1866
- "id",
1867
- "categoryId",
1868
- "name",
1869
- "needValidation",
1870
- "moduleId",
1871
- "maxFixedTip",
1872
- "description",
1873
- "amount",
1874
- "sort",
1875
- "meta",
1876
- "image",
1877
- "status"
1878
- ]
1879
- }
1880
- },
1881
- "internalName": {
1882
- "type": "string"
1883
- }
1884
- },
1885
- "required": [
1886
- "id",
1887
- "name",
1888
- "description",
1889
- "products",
1890
- "internalName"
1891
- ]
1892
- }
1893
- },
1894
- "internalName": {
1895
- "type": "string"
1896
- }
1897
- },
1898
- "required": [
1899
- "id",
1900
- "name",
1901
- "description",
1902
- "categories",
1903
- "internalName"
1904
- ]
1905
- }
1906
- }
1907
- },
1908
- "required": [
1909
- "message",
1910
- "messageCode",
1911
- "data"
1912
- ]
1913
- }
1914
-
1915
- ```
243
+ ---
244
+
245
+ ### Error Codes
246
+
247
+ > 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.
248
+
249
+
250
+ | HTTP | `errorCode` | Message | Condition |
251
+ | --- | --- | --- | --- |
252
+ | 400 | `validators.username.required` | `El campo username es obligatorio.` | `username` is absent |
253
+ | 400 | `validators.username.isString` | `El campo username debe ser de tipo string` | `username` is not a string |
254
+ | 400 | `validators.username.isNotEmpty` | `El campo username no puede estar vacío.` | `username` is empty or whitespace-only |
255
+ | 400 | `validators.secretKey.required` | `El campo secretKey es obligatorio.` | `secretKey` is absent |
256
+ | 400 | `validators.secretKey.isString` | `El campo secretKey debe ser de tipo string` | `secretKey` is not a string |
257
+ | 400 | `validators.secretKey.isNotEmpty` | `El campo secretKey no puede estar vacío.` | `secretKey` is empty or whitespace-only |
258
+ | 400 | — | `The saveSession field must be of type boolean.` | `saveSession` is present but not a boolean |
259
+ | 400 | `auth.invalid` | `Credenciales inválidas` | User does not exist or incorrect password |
260
+ | 400 | `user.blocked` | `Estás bloqueado` | User is blocked — do not retry; contact support (body may include `notify: true`) |
261
+ | 400 | `auth.invalid.TimeOuthLoginFaild` | `No se ha superado el tiempo de bloqueo por intentos` | Account temporarily locked after failed login attempts. Body includes `code: 5002` and optionally `diferentTimes` (minutes remaining before unlock) |
262
+
263
+ **Parámetros:**
264
+
265
+ | Name | Type | Description |
266
+ | --- | --- | --- |
267
+ | username | string | Campo del body: username |
268
+ | secretKey | string | Campo del body: secretKey |
269
+
270
+ ### `product_list`
271
+
272
+ ---
273
+
274
+ # Retrieve Product List
275
+
276
+ ---
277
+
278
+ ### Description
279
+
280
+ Returns the catalog of products enabled for query and sale. Internally queries the products engine and filters internal categories (`bills`, `packages`). All products returned are available for use in subsequent query and sell operations.
281
+
282
+ ---
283
+
284
+ ### Response
285
+
286
+ - `messageCode` (string) - Response status code.
287
+ - `message` (string) - Response message.
288
+ - `data` (array)
289
+ - `id` (number) - Product or agreement identifier.
290
+ - `categoryId` (number) - Category the product belongs to.
291
+ - `name` (string) - Commercial name.
292
+ - `needValidation` (boolean) - Indicates if the product requires activation steps.
293
+ - `moduleId` (number) - Associated module in core.
294
+ - `maxFixedTip` (number) - Maximum fixed tip allowed.
295
+ - `description` (string) - Description visible to the commerce.
296
+ - `amount` (number) - Fixed amount, if applicable.
297
+ - `sort` (number) - Suggested sort order in catalogs.
298
+ - `meta` (object) - Additional metadata from the products engine.
299
+ - `image` (string) - URL of the product image.
300
+ - `status` (string) - Product status (`enabled` / `disabled`).
301
+
302
+ ---
303
+
304
+ ### Error Codes
305
+
306
+ | HTTP | `errorCode` | Message | Condition |
307
+ |------|-------------|---------|----------|
308
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Database or service failure when retrieving products — retry; if it persists, notify support |
309
+ | 404 | — | `Not Found` | Blocked route — verify the URL |
310
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
311
+
312
+ ### `product_packages`
313
+
314
+ ---
315
+
316
+ # Retrieve Available Packages
317
+
318
+ ---
319
+
320
+ ### Description
321
+
322
+ 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.
323
+
324
+ ---
325
+
326
+ ### Response
327
+
328
+ - `messageCode` (string) - Response status code.
329
+ - `message` (string) - Response message.
330
+ - `data` (array)
331
+ - `id` (number) - Package or root category identifier.
332
+ - `name` (string) - Commercial name of the package.
333
+ - `description` (string) - Functional description.
334
+ - `internalName` (string) - Internal name used for filtering.
335
+ - `categories` (array) - List of subcategories.
336
+ - `id` (number) - Subcategory identifier.
337
+ - `name` (string) - Subcategory name.
338
+ - `description` (string) - Subcategory description.
339
+ - `internalName` (string) - Internal name of the subcategory.
340
+ - `products` (array) - Associated products (same structure as `/product/list`).
341
+
342
+ ---
343
+
344
+ ### Error Codes
345
+
346
+ | HTTP | `errorCode` | Message | Condition |
347
+ |------|-------------|---------|----------|
348
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Failure retrieving categories or products — retry; if it persists, notify support |
349
+ | 404 | — | `Not Found` | Blocked route — verify the URL |
350
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
1916
351
 
1917
352
  ### `product_commissions`
1918
353
 
@@ -1962,6 +397,16 @@ The response for this request is a JSON object with the following schema:
1962
397
 
1963
398
  ```
1964
399
 
400
+ ---
401
+
402
+ ### Error Codes
403
+
404
+ | HTTP | `errorCode` | Message | Condition |
405
+ |------|-------------|---------|----------|
406
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
407
+ | 404 | — | `Not Found` | Blocked route — verify the URL |
408
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Database or service failure when retrieving commissions — retry; if it persists, notify support |
409
+
1965
410
  ### `product_categories`
1966
411
 
1967
412
  ---
@@ -2108,6 +553,16 @@ The response for this request can be documented as a JSON schema:
2108
553
 
2109
554
  ```
2110
555
 
556
+ ---
557
+
558
+ ### Error Codes
559
+
560
+ | HTTP | `errorCode` | Message | Condition |
561
+ |------|-------------|---------|----------|
562
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
563
+ | 404 | — | `Not Found` | Blocked route — verify the URL |
564
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Database or service failure when retrieving categories — retry; if it persists, notify support |
565
+
2111
566
  ### `product_search`
2112
567
 
2113
568
  ---
@@ -2153,6 +608,18 @@ The response will be a JSON object with the following properties:
2153
608
 
2154
609
  - `form:` 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.
2155
610
 
611
+ ---
612
+
613
+ ### Error Codes
614
+
615
+ | HTTP | `errorCode` | Message | Condition |
616
+ |------|-------------|---------|----------|
617
+ | 400 | `validators.query.required` | `El campo query es obligatorio.` | `query` field is absent from the request body |
618
+ | 400 | `validators.query.isString` | `El campo query debe ser de tipo string` | `query` is not a string |
619
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
620
+ | 404 | — | `Not Found` | Blocked route — verify the URL |
621
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Database or service failure when searching products — retry; if it persists, notify support |
622
+
2156
623
  **Parámetros:**
2157
624
 
2158
625
  | Name | Type | Description |
@@ -2163,52 +630,62 @@ The response will be a JSON object with the following properties:
2163
630
 
2164
631
  ---
2165
632
 
633
+ # Query Product
634
+
635
+ ---
636
+
2166
637
  ### Description
2167
638
 
2168
- 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.
639
+ Performs the pre-sale query to obtain invoice data, reference, hash, and amount. Communicates with the Movement service. The returned `hash` and `hashEchoData` 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.
2169
640
 
2170
- It is important that when the request fails with the errorCode "product.errors.disabled" or similar indicating that the product is inactive, the agreements are consulted again using the search.
641
+ It is important that when the request fails with the errorCode `product.errors.disabled` or similar indicating that the product is inactive, the agreements are consulted again using the search service.
2171
642
 
2172
643
  ---
2173
644
 
2174
- ### Request Body Schema
645
+ ### Request Body
2175
646
 
2176
- - productId (number) `required`: Identifier of the product to perform the query.
2177
-
2178
- - queryType (string) `required`: Type of query to be performed.
2179
-
2180
- - ownAgreementId (null): Identifier of the own agreement, if applicable.
2181
-
2182
- - data (object) `required`: Additional data for the query.
2183
-
2184
- - reference (string) `required`: Reference for the query.
2185
-
647
+ - `productId` (number) `required` - Identifier of the product to query.
648
+ - `queryType` (string) `required` - Type of query expected by Movement (e.g., `BILLData`). Min length: 1.
649
+ - `ownAgreementId` (number) - Identifier of the own agreement, if applicable.
650
+ - `data` (object) - Specific provider data (reference, cellphone, etc.). Technically optional, but required by most products at the business level.
651
+ - `reference` (string) - Invoice or reference number to query. Used for bill products.
652
+ - `cellphone` (string) - Destination phone number. Used for top-ups and packages.
653
+ - `plate` (string) - Vehicle plate. Used for SOAT products.
2186
654
 
2187
655
  ---
2188
656
 
2189
- ### Response Body Schema
657
+ ### Response
2190
658
 
2191
- - message (string): Response message.
2192
-
2193
- - messageCode (string): Code related to the response message.
2194
-
2195
- - data (object): Response data object.
2196
-
2197
- - payload (object): Payload data.
2198
-
2199
- - amount (number): Amount related to the product.
2200
-
2201
- - productId (number): ID of the product.
2202
-
2203
- - productName (string): Name of the product.
2204
-
2205
- - reference (string): Reference related to the query.
2206
-
2207
- - hashEchoData (string): Hash echo data.
2208
-
2209
- - hash (string): Hash value.
2210
-
2211
- - amountEditable (boolean): Indicates if the amount is editable.
659
+ - `messageCode` (string) - Response status code.
660
+ - `message` (string) - Response message.
661
+ - `data` (object)
662
+ - `amount` (number) - Calculated amount for the sale.
663
+ - `productId` (number) - Identifier of the queried product.
664
+ - `productName` (string) - Product name.
665
+ - `reference` (string) - Reference to be forwarded in the sell request.
666
+ - `hash` (string) - Hash generated by Movement. Mirror of `hashEchoData` if absent.
667
+ - `hashEchoData` (string) - Mirror hash field. Mirror of `hash` if absent.
668
+ - `amountEditable` (boolean) - Indicates if the amount can be modified at sell time.
669
+
670
+ ---
671
+
672
+ ### Error Codes
673
+
674
+ | HTTP | `errorCode` | Message | Condition |
675
+ |------|-------------|---------|----------|
676
+ | 400 | `validators.productId.number` | `El campo productId debe ser de tipo Numerico` | `productId` is absent or not numeric |
677
+ | 400 | `validators.queryType.required` | `El campo queryType es obligatorio.` | `queryType` is absent |
678
+ | 400 | `validators.queryType.isString` | `El campo queryType debe ser de tipo string` | `queryType` is not a string |
679
+ | 400 | `validators.queryType.isNotEmpty` | `El campo queryType no puede estar vacío.` | `queryType` is empty or whitespace-only |
680
+ | 400 | — | `data must be an object` | `data` is present but not an object |
681
+ | 400 | — | `ownAgreementId must be a number` | `ownAgreementId` is present but not a number |
682
+ | 404 | `products.errors.notFound` / `product.not.found` | `Producto no encontrado` | Product does not exist or is unavailable |
683
+ | 404 | `products.errors.disabled` | `Producto deshabilitado` | Product is disabled — re-fetch agreements using the search service |
684
+ | 404 | `products.errors.providers.notFound` | `El producto no tiene un proveedor.` | No provider associated with the product |
685
+ | 400 | `products.errors.metadata.invalid` | `Los metadatos del convenio no tienen un formato válido` | Agreement metadata is invalid |
686
+ | 400 | `overdue.reference` | `Esta referencia ya se encuentra vencida.` | Reference is overdue — do not retry with same reference |
687
+ | 400 | `closed.reference` | `Esta referencia ya se encuentra cerrada.` | Reference is closed |
688
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
2212
689
 
2213
690
  **Parámetros:**
2214
691
 
@@ -2354,282 +831,46 @@ The response will include the results of the query in case of success.
2354
831
 
2355
832
  - productId (number): The ID of the product related to the query result.
2356
833
 
2357
- - productName (string): The name of the product related to the query result.
2358
-
2359
- - reference (string): The reference related to the query result.
2360
-
2361
- - hashEchoData (string): The echoed hash data.
2362
-
2363
- - hash (string): The hash data.
2364
-
2365
- - amountEditable (boolean): Indicates whether the amount is editable or not.
2366
-
2367
- - code (string): The code from the response.
2368
-
2369
- - errorCode (string): The error code from the response.
2370
-
2371
- - statusCode (number): The status code from the response.
2372
-
2373
- - timestamp (number): The timestamp of the response.
2374
-
2375
- **Parámetros:**
2376
-
2377
- | Name | Type | Description |
2378
- | --- | --- | --- |
2379
- | productId | number | Campo del body: productId |
2380
- | queryType | string | Campo del body: queryType |
2381
- | ownAgreementId | null | Campo del body: ownAgreementId |
2382
- | data | object | Campo del body: data |
2383
-
2384
- ### `query_convenio_vendo`
2385
-
2386
- ---
2387
-
2388
- ### Description
2389
-
2390
- 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.
2391
-
2392
- ---
2393
-
2394
- ### Request Body Schema
2395
-
2396
- - productId (number) `required`: Identifier of the product to perform the query.
2397
-
2398
- - queryType (string) `required`: Type of query to be performed.
2399
-
2400
- - ownAgreementId (null): Identifier of the own agreement, if applicable.
2401
-
2402
- - data (object) `required`: Additional data for the query.
2403
-
2404
- - reference (string) `required`: Reference for the query.
2405
-
2406
-
2407
- ---
2408
-
2409
- ### Response Body Schema
2410
-
2411
- - message (string): Response message.
2412
-
2413
- - messageCode (string): Code related to the response message.
2414
-
2415
- - data (object): Response data object.
2416
-
2417
- - payload (object): Payload data.
2418
-
2419
- - amount (number): Amount related to the product.
2420
-
2421
- - productId (number): ID of the product.
2422
-
2423
- - productName (string): Name of the product.
2424
-
2425
- - reference (string): Reference related to the query.
2426
-
2427
- - hashEchoData (string): Hash echo data.
2428
-
2429
- - hash (string): Hash value.
2430
-
2431
- - amountEditable (boolean): Indicates if the amount is editable.
2432
-
2433
- **Parámetros:**
2434
-
2435
- | Name | Type | Description |
2436
- | --- | --- | --- |
2437
- | productId | number | Campo del body: productId |
2438
- | queryType | string | Campo del body: queryType |
2439
- | ownAgreementId | number | Campo del body: ownAgreementId |
2440
- | data | object | Campo del body: data |
2441
-
2442
- ### `product_act_val_pro_state`
2443
-
2444
- ---
2445
-
2446
- ### Description
2447
-
2448
- Allows users to verify the activation status of a special product. The user making the request can determine the stage of their special product activation request. Below is a list of status codes along with their corresponding messages, indicating whether the request is pending review, approved, rejected, confirmed, managed by the affiliations area, or if the linking process for the product has already started. This information is useful for keeping the user informed about the progress of their request and for them to take necessary actions based on the current process status.
2449
-
2450
- The following is a list of product status codes and their messages.
2451
-
2452
- ```
2453
- | id | name | message |
2454
- |----|------------|-------------------------------------------------------------------------------------------------------|
2455
- | P | PENDING | Your application is pending review |
2456
- | A | APPROVED | Your application has been approved, we are waiting for the supplier to review your documents |
2457
- | R | REJECTED | Your application has been rejected, please contact your advisor. |
2458
- | M | MANAGEMENT | Your application is being handled by the linking area. |
2459
- | C | CONFIRM | Your application is confirmed, you can now sell your product. |
2460
- | S | STARTED | You have already tried to complete the linking process for this product, continue filling in the data |
2461
-
2462
- ```
2463
-
2464
- ---
2465
-
2466
- ## Request Schema
2467
-
2468
- - `productId`: Number representing the product identifier (required)
2469
-
2470
- - `categoryId`: Number representing the category identifier (required)
2471
-
2472
-
2473
- ---
2474
-
2475
- ## Response Schema
2476
-
2477
- - `message`: String containing a message about the operation result (required)
2478
-
2479
- - `messageCode`: String code indicating the operation result (required)
2480
-
2481
- - `data`: Object containing additional response data (required)
2482
-
2483
- - `status`: String representing the status
2484
-
2485
- - `state`: Boolean indicating the state
2486
-
2487
- - `message`: String containing an additional message
2488
-
2489
- - `stateCode`: String representing a state code
2490
-
2491
- **Parámetros:**
2492
-
2493
- | Name | Type | Description |
2494
- | --- | --- | --- |
2495
- | body | string | Body del request |
2496
-
2497
- ### `product_act_get_pro_requirements`
2498
-
2499
- ---
2500
-
2501
- ## Description
2502
-
2503
- Allows retrieving all the necessary and mandatory requirements to complete the activation process of a special product. The requirements are divided into categories, each with a specific description. Each category contains a list of detailed requirements, such as personal data, merchant information, and additional documents. Requirements may include document uploads, information validation, or contract signing. These requirements are essential for the user to access the special product, and this method provides the necessary information for the user to successfully complete the activation process.
2504
-
2505
- In the response for each requirement, you'll find the 'type' attribute. This attribute determines the type of data required to construct the form that the user must complete. Some common data types include:
2506
-
2507
- ```
2508
- | type | description |
2509
- |-----------------------|-----------------------------------------------------------------------------------------------------|
2510
- | text | For entering text information, such as names, surnames, etc. |
2511
- | file | Allows uploading files, such as images or documents. |
2512
- | select | Presents options for the user to choose from. |
2513
- | downloadAndUpload | Provides a link to download one file and then upload another related file. |
2514
- | securityQuestions | Provides security questions for authentication. |
2515
- | checkboxLink | For accepting terms and conditions through a verification link. |
2516
- | loanApplicationPolicy | Information and acceptance of the loan application policy. |
2517
- | location | Allows the user to enter or select their location. |
2518
- | metamap | Redirects the user to the Metamap process for identity validation. |
2519
- | bankAccount | Provides the basic structure to build the form for a banking process. |
2520
- | | It includes selecting the bank entity, entering the account number, and selecting the account type. |
2521
-
2522
- ```
2523
-
2524
- ---
2525
-
2526
- ## Request Schema
2527
-
2528
- - `productId`: Number representing the product identifier (required)
2529
-
2530
- - `categoryId`: Number representing the category identifier (required)
2531
-
2532
-
2533
- ---
2534
-
2535
- ## Response Schema
2536
-
2537
- - `message`: String containing a message about the operation result (required)
2538
-
2539
- - `messageCode`: String code indicating the operation result (required)
2540
-
2541
- - `data`: Object containing additional response data (required)
2542
-
2543
- - `id`: Number representing the identifier
2544
-
2545
- - `name`: String representing the name
2546
-
2547
- - `description`: String containing the description
2548
-
2549
- - `requirements`: Array of requirement objects
2550
-
2551
- - `id`: Number representing the requirement identifier
2552
-
2553
- - `name`: String representing the requirement name
2554
-
2555
- - `description`: String containing the requirement description
2556
-
2557
- - `form`: Object containing form data
2558
-
2559
- **Parámetros:**
2560
-
2561
- | Name | Type | Description |
2562
- | --- | --- | --- |
2563
- | body | string | Body del request |
2564
-
2565
- ### `product_activation_update`
2566
-
2567
- ---
2568
-
2569
- ## Description
2570
-
2571
- Allows updating the information of the requirements completed by the user for the activation process of a special product. Users can modify the information provided in each of the requirements to ensure it is up-to-date and accurate. Updating the information of the requirements is essential to progress in the activation process of the special product. Once the information is updated, it is evaluated again to determine if all necessary requirements are met to continue or complete the activation process.
2572
-
2573
- ---
2574
-
2575
- ## Request Schema
2576
-
2577
- - `requirements`: Object containing requirement data (required)
2578
-
2579
- - Each key is a string representing a requirement ID
2580
-
2581
- - Each value is an object with arbitrary properties
2582
-
2583
-
2584
- ---
2585
-
2586
- ## Response Schema
2587
-
2588
- - `message`: String containing a message about the operation result (required)
834
+ - productName (string): The name of the product related to the query result.
835
+
836
+ - reference (string): The reference related to the query result.
837
+
838
+ - hashEchoData (string): The echoed hash data.
839
+
840
+ - hash (string): The hash data.
841
+
842
+ - amountEditable (boolean): Indicates whether the amount is editable or not.
843
+
844
+ - code (string): The code from the response.
2589
845
 
2590
- - `messageCode`: String code indicating the operation result (required)
846
+ - errorCode (string): The error code from the response.
2591
847
 
2592
- - `data`: Object containing additional response data (required)
848
+ - statusCode (number): The status code from the response.
2593
849
 
2594
- - `errors`: Array of error objects
2595
-
2596
- - `id`: Number representing the error identifier
2597
-
2598
- - `message`: String containing the error message
850
+ - timestamp (number): The timestamp of the response.
2599
851
 
2600
852
  **Parámetros:**
2601
853
 
2602
854
  | Name | Type | Description |
2603
855
  | --- | --- | --- |
2604
- | requirements | object | Campo del body: requirements |
2605
-
2606
- ### `product_activation_upload_file`
2607
-
2608
- ---
2609
-
2610
- ### Description
2611
-
2612
- Allows users to upload files necessary to meet the requirements of the activation process for a special product. The uploaded files can be documents in PDF format, images in JPG, JPEG, or PNG formats, or Word documents in DOC or DOCX format. Before uploading a file, validations are performed to ensure that it meets the established type and size requirements. Once uploaded, the file can be subsequently validated as part of the special product activation process. If the file meets the requirements, it will contribute to the progress of the process; otherwise, it will be indicated as invalid, and a new upload will be requested.
856
+ | productId | number | Campo del body: productId |
857
+ | queryType | string | Campo del body: queryType |
858
+ | ownAgreementId | null | Campo del body: ownAgreementId |
859
+ | data | object | Campo del body: data |
2613
860
 
2614
- ---
861
+ ### `query`
2615
862
 
2616
- ### Response schema
863
+ **Important:** This request will be processed within a timeout of **30,000 milliseconds (30 seconds)**.
2617
864
 
2618
- - `message`: String containing a message about the operation result (required)
2619
-
2620
- - `messageCode`: String code indicating the operation result (required)
2621
-
2622
- - `data`: Object containing additional response data (required)
2623
-
2624
- - `errors`: Array of error objects
2625
-
2626
- - `id`: Number representing the error identifier
2627
-
2628
- - `message`: String containing the error message
865
+ ### Test Data
2629
866
 
2630
- ### `query`
867
+ Use the following example values to test this endpoint in the QA environment:
2631
868
 
2632
- POST /product/query
869
+ | Field | Example Value |
870
+ |-------|---------------|
871
+ | productId | 1587 |
872
+ | queryType | "BILLData" |
873
+ | data.reference | "63440172" |
2633
874
 
2634
875
  **Parámetros:**
2635
876
 
@@ -2737,13 +978,28 @@ Allows performing a sale on the platform. Send the request body with the necessa
2737
978
 
2738
979
  - `message`: String representing the message (required)
2739
980
 
981
+ ### Test Data
982
+
983
+ Use the following example values to test this endpoint in the QA environment:
984
+
985
+ | Field | Example Value |
986
+ |-------|---------------|
987
+ | amount | 9999 |
988
+ | productId | 1587 |
989
+ | sellType | "Bill" |
990
+ | data.agreement | 2010910 |
991
+ | data.reference | "63440172" |
992
+ | data.cellphone | "3203550000" |
993
+ | data.hashEchoData | "eyJhZ3JlZW1lbnRJZCI6MzM3NDMsInJlZmVyZW5jZTEiOiI2MzQ0MDE3MiIsInJlZmVyZW5jZTIiOm51bGwsImFtb3VudCI6OTk5OSwiYWdyZWVtZW50TWVzc2FnZSI6IiIsImFncmVlbWVudENvZGUiOiIwMCIsInJlcXVpcmVzQW1vdW50IjoiMCIsImFkaXRpb25hbFZhbHVlNTRFY28iOiIwMTIzNDU2Nzg5MCIsImFkaXRpb25hbFZhbHVlNjJFY28iOiIxNTE2NTc4OTU1NjM0MjgxNjM4NzM5OTAyMjk1IiwiYWNjb3VudERhdGFBY3JlZGl0ZWQiOiI0NzU3NjY3MjA1ODE2Mzg3Mzk5MDIyOTUyMjc2IiwiYWRkaXRpb25hbENvbXBhbnlDb2RlIjoiMTUxNjU3ODk1NTYzNDI4MjgwNjI4MzcwMTIxMiIsImRhdGUiOiIyMDI2LTAzLTEwIiwidHJhY2UiOjUxMjF9" |
994
+
2740
995
  **Parámetros:**
2741
996
 
2742
997
  | Name | Type | Description |
2743
998
  | --- | --- | --- |
999
+ | amount | number | Campo del body: amount |
2744
1000
  | productId | number | Campo del body: productId |
2745
- | queryType | string | Campo del body: queryType |
2746
- | ownAgreementId | null | Campo del body: ownAgreementId |
1001
+ | hash | string | Campo del body: hash |
1002
+ | sellType | string | Campo del body: sellType |
2747
1003
  | data | object | Campo del body: data |
2748
1004
 
2749
1005
  ### `query_axa`
@@ -2805,6 +1061,19 @@ The following payload is required for performing a custom query:
2805
1061
 
2806
1062
  - `license`: (string, optional) The license plate of the vehicle.
2807
1063
 
1064
+ ### Test Data
1065
+
1066
+ Use the following example values to test this endpoint in the QA environment:
1067
+
1068
+ | Field | Example Value |
1069
+ |-------|---------------|
1070
+ | queryType | "SOATData" |
1071
+ | productId | 91 |
1072
+ | docType | "NIT" |
1073
+ | document | "819000939" |
1074
+ | cellphone | "3200000000" |
1075
+ | license | "NAC854" |
1076
+
2808
1077
  **Parámetros:**
2809
1078
 
2810
1079
  | Name | Type | Description |
@@ -2907,6 +1176,35 @@ The following payload is required for performing a custom sell:
2907
1176
 
2908
1177
  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.
2909
1178
 
1179
+ ### Test Data
1180
+
1181
+ Use the following example values to test this endpoint in the QA environment:
1182
+
1183
+ | Field | Example Value |
1184
+ |-------|---------------|
1185
+ | productId | 91 |
1186
+ | amount | 557400 |
1187
+ | data.amount.amount | 556400 |
1188
+ | data.amount.runt | 2100 |
1189
+ | data.amount.prima | 364700 |
1190
+ | data.amount.contributions | 189600 |
1191
+ | data.amount.valueDiscountLaw | 0 |
1192
+ | data.amount.valueDiscountTotal | 0 |
1193
+ | data.amount.valuePayDiscount | 556400 |
1194
+ | data.amount.amountAdministrative | 566 |
1195
+ | data.amount.amountTotal | 557400 |
1196
+ | data.amount.dateStart | "2024-06-04" |
1197
+ | data.amount.dateEnd | "2025-06-03" |
1198
+ | data.amount.discount | 0 |
1199
+ | data.license | "EJV885" |
1200
+ | data.hashEchoData | "eyJpZFRyYW5zYWNjaW9uIjoiMmE2MDhjY2YtZjdiOS00ZGM1LTg2OTQtYTAyY2E0ODNkOWE4IiwiaWRDb3JyZWxhY2lvbiI6MTcxNzUzNDY0MTc1MH0=" |
1201
+ | data.cifrateAmount.hash | "eyJhbW91bnQiOjU1NzQwMH0=" |
1202
+ | data.cifrateAmount.hashEchoData | "ef3e40f13fa0430eb1dfa9a8e499e3a4ea81c42159b5ee3eccac88d8ef47198e32d28339fcf656704009a0b05802363b3016d921bcfd6aa8920558535aa75218" |
1203
+ | data.userDetail.cellphone | "3200000000" |
1204
+ | data.userDetail.email | "test@email.com" |
1205
+ | data.userDetail.document | "860002964" |
1206
+ | data.userDetail.docType | "NIT" |
1207
+
2910
1208
  **Parámetros:**
2911
1209
 
2912
1210
  | Name | Type | Description |
@@ -3039,6 +1337,8 @@ The following payload is required for performing a custom query:
3039
1337
 
3040
1338
  - `license`: (string, required) The license plate of the vehicle.
3041
1339
 
1340
+ **Important:** This request will be processed within a timeout of **30,000 milliseconds (30 seconds)**.
1341
+
3042
1342
  **Parámetros:**
3043
1343
 
3044
1344
  | Name | Type | Description |
@@ -3510,7 +1810,21 @@ The following payload is required for performing a custom sell:
3510
1810
 
3511
1811
  - `vehicleLineId`: (number, required) Vehicle line ID.
3512
1812
 
3513
- - `vehicleClassId`: (number, required) Vehicle class ID.
1813
+ - `vehicleClassId`: (number, required) Vehicle class ID. Defined by the SAME provider (SOAT – RUNT classification). Valid values:
1814
+
1815
+ | Value | Description |
1816
+ | --- | --- |
1817
+ | 1 | MOTOS |
1818
+ | 2 | CAMPEROS O CAMIONETAS |
1819
+ | 3 | CARGA O MIXTO |
1820
+ | 4 | OFICIALES, ESPECIALES, BOMBEROS, DIPLOMÁTICOS |
1821
+ | 5 | AUTOMÓVILES FAMILIARES |
1822
+ | 6 | VEHÍCULO PARA 6 O MÁS PASAJEROS |
1823
+ | 7 | AUTOS DE NEGOCIOS, TAXIS, ALQUILER, ENSEÑANZA |
1824
+ | 8 | BUSES O BUSETAS |
1825
+ | 9 | INTERMUNICIPAL |
1826
+ | 12 | MOTOCARRO |
1827
+ | 13 | CICLOMOTOR |
3514
1828
 
3515
1829
  - `vehicleClassMinistryId`: (number, required) Vehicle class ID (Ministry).
3516
1830
 
@@ -3591,362 +1905,127 @@ The following payload is required for performing a custom sell:
3591
1905
  - `typePerson`: (string) Type of person (e.g., 'F' for natural person, 'J' for legal person).
3592
1906
 
3593
1907
  - `gender`: (string) User's gender.
3594
-
3595
- - `RegimenTypeId`: (string, required) User's regime type ID.
3596
-
3597
- - `RutId`: (number, required) User's RUT ID.
3598
-
3599
- - `amount`: (number, required) Total amount of the sale.
3600
-
3601
- - `moveTmpBalance`: (boolean) Indicates whether to move temporary balance.
3602
-
3603
-
3604
- `Note`: If the VIN data is not available, the API will use the chassis number as a replacement.
3605
-
3606
- After the sale has been successfully completed, the response will follow a structure similar to the following. **This response will be returned within a timeout of 120,000 milliseconds (2 minutes).** 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.
3607
-
3608
- **Parámetros:**
3609
-
3610
- | Name | Type | Description |
3611
- | --- | --- | --- |
3612
- | productId | number | Campo del body: productId |
3613
- | data | object | Campo del body: data |
3614
- | amount | number | Campo del body: amount |
3615
-
3616
- ### `sell_luck_and_chance_rushbet`
3617
-
3618
- 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.
3619
-
3620
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
3621
-
3622
- **Parámetros:**
3623
-
3624
- | Name | Type | Description |
3625
- | --- | --- | --- |
3626
- | productId | number | Campo del body: productId |
3627
- | amount | number | Campo del body: amount |
3628
- | data | object | Campo del body: data |
3629
-
3630
- ### `sell_packages_movistar`
3631
-
3632
- 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.
3633
-
3634
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
3635
-
3636
- **Parámetros:**
3637
-
3638
- | Name | Type | Description |
3639
- | --- | --- | --- |
3640
- | productId | number | Campo del body: productId |
3641
- | data | object | Campo del body: data |
3642
-
3643
- ### `sell`
3644
-
3645
- ---
3646
-
3647
- ## Description
3648
-
3649
- 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.
3650
-
3651
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
3652
-
3653
- ---
3654
-
3655
- ## Request Schema
3656
-
3657
- - `productId`: Number representing the product identifier (required)
3658
-
3659
- - `amount`: Number representing the amount of the payment (required)
3660
-
3661
- - `data`: Object containing additional data (required)
3662
-
3663
- - `cellphone`: String containing the cellphone number (required)
3664
-
3665
- - `_preventDuplicate`: Boolean to disable duplicate transaction prevention, i.e. if the value is `true`, duplicate transactions will not be validated, allowing to send bulk reloads. (optional)
3666
-
3667
-
3668
- ---
3669
-
3670
- ## Response Schema
3671
-
3672
- - `statusCode`: Number representing the HTTP status code (required)
3673
-
3674
- - `message`: String containing a message about the operation result (required)
3675
-
3676
- - `date`: Number representing the timestamp of the operation (required)
3677
-
3678
- - `payload`: Object containing the main response data (required)
3679
-
3680
- - `posBalance`: String representing the balance after the operation (required)
3681
-
3682
- - `tmpBalance`: String representing the temporary balance (required)
3683
-
3684
- - `debt`: Number representing the debt amount (required)
3685
-
3686
- - `billData`: Object containing bill-related data (required)
3687
-
3688
- - `fields`: Array of field objects (required)
3689
-
3690
- - `label`: String representing the field label (required)
3691
-
3692
- - `value`: String or Number representing the field value (required)
3693
-
3694
- - `type`: String representing the field type (optional)
3695
-
3696
- - `labelLink`: String representing the label link (optional)
3697
-
3698
- - `costs`: Array of cost objects (required)
3699
-
3700
- - `label`: String representing the cost label (required)
3701
-
3702
- - `value`: Number representing the cost value (required)
3703
-
3704
- - `type`: String representing the cost type (optional)
3705
-
3706
- - `labelLink`: String representing the label link (optional)
3707
-
3708
- - `messages`: Array of message objects (required)
3709
-
3710
- - `value`: String representing the message value (required)
3711
-
3712
- - `share`: Object containing share information (required)
3713
-
3714
- - `cellphone`: String representing the cellphone number (required)
3715
-
3716
- - `message`: String representing the message (required)
3717
-
3718
- - `sale`: Object containing sale information (required)
3719
-
3720
- - `id`: Number representing the sale ID (required)
3721
-
3722
- - `userId`: Number representing the user ID (required)
3723
-
3724
- - `amount`: Number representing the sale amount (required)
3725
-
3726
- - `serviceNumber`: String representing the service number (required)
3727
-
3728
- - `status`: Number representing the sale status (required)
3729
-
3730
- - `productId`: Number representing the product ID (required)
3731
-
3732
- - `createdAt`: String representing the creation timestamp (required)
3733
-
3734
- - `transactionId`: String representing the transaction ID (required)
3735
-
3736
- - `extra`: String representing additional information (optional)
3737
-
3738
- **Parámetros:**
3739
-
3740
- | Name | Type | Description |
3741
- | --- | --- | --- |
3742
- | productId | number | Campo del body: productId |
3743
- | amount | number | Campo del body: amount |
3744
- | data | object | Campo del body: data |
3745
- | _preventDuplicate | boolean | Campo del body: _preventDuplicate |
3746
-
3747
- ### `product_directtv_prepago`
3748
-
3749
- ---
3750
-
3751
- ## Description
3752
-
3753
- 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.
3754
-
3755
- ---
3756
-
3757
- ## Request Schema
3758
-
3759
- - `productId`: Number representing the product identifier (required)
3760
-
3761
- - `amount`: Number representing the amount of the payment (required)
3762
-
3763
- - `data`: Object containing additional data (required)
3764
-
3765
- - `cellphone`: String containing the cellphone number (required)
3766
-
3767
-
3768
- ---
3769
-
3770
- ## Response Schema
3771
-
3772
- - `message`: String containing a message about the operation result (required)
3773
-
3774
- - `messageCode`: String code indicating the operation result (required)
3775
-
3776
- - `data`: Object containing additional response data (required)
3777
-
3778
- - `date`: Number representing the timestamp of the operation (required)
3779
-
3780
- - `sellId`: Number representing the identifier of the sell operation (required)
3781
-
3782
- - `payload`: Object containing the main response data (required)
3783
-
3784
- - `preBalance`: Number representing the balance before the operation (required)
3785
-
3786
- - `posBalance`: Number representing the balance after the operation (required)
3787
-
3788
- - `tmpBalance`: Number representing the temporary balance (required)
3789
-
3790
- - `debt`: Number representing the debt amount (required)
3791
-
3792
- - `billData`: Object containing bill-related data (required)
3793
-
3794
- - `fields`: Array of field objects (required)
3795
-
3796
- - `name`: String representing the field name (required)
3797
-
3798
- - `type`: String representing the field type (required)
3799
-
3800
- - `options`: Array of option objects (required)
3801
-
3802
- - `label`: String representing the option label (required)
3803
-
3804
- - `value`: String representing the option value (required)
3805
-
3806
- - `label`: String representing the field label (required)
3807
-
3808
- - `placeholder`: String representing the field placeholder (required)
3809
-
3810
- - `required`: Boolean indicating if the field is required (required)
3811
-
3812
- - `costs`: Array of cost objects (required)
3813
-
3814
- - `label`: String representing the cost label (required)
3815
-
3816
- - `value`: Number representing the cost value (required)
3817
-
3818
- - `messages`: Array of message objects (required)
3819
-
3820
- - `value`: String representing the message value (required)
3821
-
3822
- - `stringInformation`: Array of string information objects (required)
3823
-
3824
- - `value`: String representing the string information value (required)
3825
-
3826
- - `footerInformation`: Array of footer information objects (required)
3827
-
3828
- - `share`: Object containing share information (required)
3829
-
3830
- - `cellphone`: String representing the cellphone number (required)
3831
-
3832
- - `message`: String representing the message (required)
1908
+
1909
+ - `RegimenTypeId`: (string, required) User's regime type ID.
1910
+
1911
+ - `RutId`: (number, required) User's RUT ID.
1912
+
1913
+ - `amount`: (number, required) Total amount of the sale.
1914
+
1915
+ - `moveTmpBalance`: (boolean) Indicates whether to move temporary balance.
1916
+
1917
+
1918
+ `Note`: If the VIN data is not available, the API will use the chassis number as a replacement.
1919
+
1920
+ After the sale has been successfully completed, the response will follow a structure similar to the following. **This response will be returned within a timeout of 120,000 milliseconds (2 minutes).** 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.
3833
1921
 
3834
1922
  **Parámetros:**
3835
1923
 
3836
1924
  | Name | Type | Description |
3837
1925
  | --- | --- | --- |
3838
- | data | object | Campo del body: data |
3839
1926
  | productId | number | Campo del body: productId |
1927
+ | data | object | Campo del body: data |
3840
1928
  | amount | number | Campo del body: amount |
3841
1929
 
3842
- ### `sell_netflix`
3843
-
3844
- ---
3845
-
3846
- ## Description
1930
+ ### `sell_luck_and_chance_rushbet`
3847
1931
 
3848
1932
  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.
3849
1933
 
3850
1934
  **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
3851
1935
 
1936
+ **Important:** This response will be returned within a timeout of **60,000 milliseconds (60 seconds)**.
1937
+
3852
1938
  ---
3853
1939
 
3854
1940
  ## Request Schema
3855
1941
 
3856
1942
  - `productId`: Number representing the product identifier (required)
3857
1943
 
3858
- - `amount`: Number representing the amount for the transaction (required)
1944
+ - `amount`: Number representing the payment amount (required)
3859
1945
 
3860
- - `data`: Object containing additional data (required)
1946
+ - `data`: Object containing additional transaction data (required)
3861
1947
 
3862
- - `cellphone`: String containing the cellphone number (required)
1948
+ - `cellphone`: String containing the customer's cellphone number (required)
3863
1949
 
3864
- - `email`: String containing the email address (required)
1950
+ - `document`: String containing the customer's identification document number (required)
1951
+
1952
+ - `name`: String containing the customer's first name (required)
1953
+
1954
+ - `lastname`: String containing the customer's last name (required)
3865
1955
 
3866
1956
 
3867
1957
  ---
3868
1958
 
3869
- ## Response Schema
1959
+ ### Test Data
3870
1960
 
3871
- - `message`: String containing a message about the operation result (required)
3872
-
3873
- - `messageCode`: String code indicating the operation result (required)
1961
+ Use the following example values to test this endpoint in the QA environment:
1962
+
1963
+ | Field | Example Value |
1964
+ |-------|---------------|
1965
+ | productId | 603 |
1966
+ | amount | 100 |
1967
+ | data.cellphone | "3200000000" |
1968
+ | data.document | "1023900000" |
1969
+ | data.name | "Pachito" |
1970
+ | data.lastname | "Hernesto" |
1971
+
1972
+ **Parámetros:**
1973
+
1974
+ | Name | Type | Description |
1975
+ | --- | --- | --- |
1976
+ | productId | number | Campo del body: productId |
1977
+ | amount | number | Campo del body: amount |
1978
+ | data | object | Campo del body: data |
1979
+ | sellType | string | Campo del body: sellType |
1980
+ | hash | string | Campo del body: hash |
1981
+
1982
+ ### `sell_packages_claro`
1983
+
1984
+ 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.
1985
+
1986
+ **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
1987
+
1988
+ **Important:** This response will be returned within a timeout of **60,000 milliseconds (60 seconds)**.
1989
+
1990
+ ---
1991
+
1992
+ ## Request Schema
1993
+
1994
+ - `productId`: Number representing the product identifier (required)
3874
1995
 
3875
- - `data`: Object containing additional response data (required)
1996
+ - `data`: Object containing additional transaction data (required)
3876
1997
 
3877
- - `date`: Number representing the timestamp of the operation (required)
3878
-
3879
- - `sellId`: Number representing the identifier of the sell operation (required)
3880
-
3881
- - `payload`: Object containing the main response data (required)
1998
+ - `cellphone`: String containing the customer's cellphone number (required)
3882
1999
 
3883
- - `preBalance`: Number representing the balance before the operation (required)
3884
-
3885
- - `posBalance`: Number representing the balance after the operation (required)
3886
-
3887
- - `tmpBalance`: Number representing the temporary balance (required)
3888
-
3889
- - `debt`: Number representing the debt amount (required)
3890
-
3891
- - `billData`: Object containing bill-related data (required)
3892
-
3893
- - `fields`: Array of field objects (required)
3894
-
3895
- - `name`: String representing the field name (required)
3896
-
3897
- - `type`: String representing the field type (required)
3898
-
3899
- - `options`: Array of option objects (required)
3900
-
3901
- - `label`: String representing the option label (required)
3902
-
3903
- - `value`: String representing the option value (required)
3904
-
3905
- - `label`: String representing the field label (required)
3906
-
3907
- - `placeholder`: String representing the field placeholder (required)
3908
-
3909
- - `required`: Boolean indicating if the field is required (required)
3910
-
3911
- - `costs`: Array of cost objects (required)
3912
-
3913
- - `label`: String representing the cost label (required)
3914
-
3915
- - `value`: Number representing the cost value (required)
3916
-
3917
- - `messages`: Array of message objects (required)
3918
-
3919
- - `value`: String representing the message value (required)
3920
-
3921
- - `stringInformation`: Array of string information objects (required)
3922
-
3923
- - `value`: String representing the string information value (required)
3924
-
3925
- - `footerInformation`: Array of footer information objects (required)
3926
-
3927
- - `share`: Object containing share information (required)
3928
-
3929
- - `cellphone`: String representing the cellphone number (required)
3930
-
3931
- - `message`: String representing the message (required)
2000
+
2001
+ ---
2002
+
2003
+ ### Test Data
2004
+
2005
+ Use the following example values to test this endpoint in the QA environment:
2006
+
2007
+ | Field | Example Value |
2008
+ |-------|---|
2009
+ | productId | 200048 |
2010
+ | data.cellphone | "3215302000" |
3932
2011
 
3933
2012
  **Parámetros:**
3934
2013
 
3935
2014
  | Name | Type | Description |
3936
2015
  | --- | --- | --- |
3937
2016
  | productId | number | Campo del body: productId |
3938
- | amount | number | Campo del body: amount |
3939
2017
  | data | object | Campo del body: data |
2018
+ | amount | number | Campo del body: amount |
2019
+ | sellType | string | Campo del body: sellType |
2020
+ | hash | string | Campo del body: hash |
3940
2021
 
3941
- ### `sell_netflix_error`
2022
+ ### `product_directtv_prepago`
3942
2023
 
3943
2024
  ---
3944
2025
 
3945
2026
  ## Description
3946
2027
 
3947
- 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.
3948
-
3949
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
2028
+ 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.
3950
2029
 
3951
2030
  ---
3952
2031
 
@@ -3954,26 +2033,12 @@ Allows performing a sale on the platform. Send the request body with the necessa
3954
2033
 
3955
2034
  - `productId`: Number representing the product identifier (required)
3956
2035
 
3957
- - `moveTmpBalance`: Boolean flag to move temporary balance (required)
3958
-
3959
- - `hash`: String containing the hash value for the operation (nullable)
3960
-
3961
- - `sellType`: String indicating the type of the sell operation (nullable)
3962
-
3963
2036
  - `amount`: Number representing the amount of the payment (required)
3964
2037
 
3965
2038
  - `data`: Object containing additional data (required)
3966
2039
 
3967
2040
  - `cellphone`: String containing the cellphone number (required)
3968
2041
 
3969
- - `email`: String containing the email address (required)
3970
-
3971
- - `document`: String containing the document number (required)
3972
-
3973
- - `reference`: String containing the reference number for the payment (nullable)
3974
-
3975
- - `hashEchoData`: String containing the hash echo data for the operation (nullable)
3976
-
3977
2042
 
3978
2043
  ---
3979
2044
 
@@ -4041,108 +2106,35 @@ Allows performing a sale on the platform. Send the request body with the necessa
4041
2106
 
4042
2107
  - `message`: String representing the message (required)
4043
2108
 
4044
- **Parámetros:**
4045
-
4046
- | Name | Type | Description |
4047
- | --- | --- | --- |
4048
- | productId | number | Campo del body: productId |
4049
- | hash | null | Campo del body: hash |
4050
- | sellType | null | Campo del body: sellType |
4051
- | amount | number | Campo del body: amount |
4052
- | data | object | Campo del body: data |
4053
-
4054
- ### `sell_xbox_gamepass_core_3_meses`
4055
-
4056
- ---
4057
-
4058
- ## Description
4059
-
4060
- 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.
4061
-
4062
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
4063
-
4064
- ---
4065
-
4066
- ## Request Schema
4067
-
4068
- - `productId`: Number representing the product identifier (required)
4069
-
4070
- - `amount`: Number representing the amount of the payment (required)
4071
-
4072
- - `moveTmpBalance`: Boolean flag to move temporary balance (required)
4073
-
4074
- - `data`: Object containing additional data (required)
4075
-
4076
- - `cellphone`: String containing the cellphone number (required)
4077
-
4078
- - `email`: String containing the email address (required)
4079
-
2109
+ **Important:** This response will be returned within a timeout of **60,000 milliseconds (60 seconds)**.
4080
2110
 
4081
- ---
2111
+ ### Test Data
4082
2112
 
4083
- ## Response Schema
2113
+ Use the following example values to test this endpoint in the QA environment:
4084
2114
 
4085
- - `messageCode`: String code indicating the operation result (required)
4086
-
4087
- - `message`: String containing a message about the operation result (required)
4088
-
4089
- - `data`: Object containing additional response data (required)
4090
-
4091
- - `statusCode`: Number representing the status code (required)
4092
-
4093
- - `message`: String containing a message about the transaction (required)
4094
-
4095
- - `date`: Number representing the timestamp of the operation (required)
4096
-
4097
- - `payload`: Object containing the main response data (required)
4098
-
4099
- - `posBalance`: Number representing the balance after the operation (required)
4100
-
4101
- - `tmpBalance`: Number representing the temporary balance (required)
4102
-
4103
- - `billData`: Object containing bill-related data (required)
4104
-
4105
- - `fields`: Array of field objects (required)
4106
-
4107
- - `label`: String representing the field label (required)
4108
-
4109
- - `value`: String or Number representing the field value (required)
4110
-
4111
- - `costs`: Array of cost objects (required)
4112
-
4113
- - `label`: String representing the cost label (required)
4114
-
4115
- - `value`: Number representing the cost value (required)
4116
-
4117
- - `messages`: Array of message objects (required)
4118
-
4119
- - `value`: String representing the message value (required)
4120
-
4121
- - `share`: Object containing share information (required)
4122
-
4123
- - `cellphone`: String representing the cellphone number (required)
4124
-
4125
- - `message`: String representing the message (required)
4126
-
4127
- - `preBalance`: Number representing the balance before the operation (required)
4128
-
4129
- - `debt`: Number representing the debt amount (required)
2115
+ | Field | Example Value |
2116
+ |-------|---------------|
2117
+ | productId | 50 |
2118
+ | amount | 1000 |
2119
+ | data.cellphone | "3015874044" |
4130
2120
 
4131
2121
  **Parámetros:**
4132
2122
 
4133
2123
  | Name | Type | Description |
4134
2124
  | --- | --- | --- |
2125
+ | data | object | Campo del body: data |
4135
2126
  | productId | number | Campo del body: productId |
4136
2127
  | amount | number | Campo del body: amount |
4137
- | data | object | Campo del body: data |
4138
2128
 
4139
- ### `product_directtv_go_1014005`
2129
+ ### `sell_netflix`
4140
2130
 
4141
2131
  ---
4142
2132
 
4143
2133
  ## Description
4144
2134
 
4145
- 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.
2135
+ 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.
2136
+
2137
+ **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
4146
2138
 
4147
2139
  ---
4148
2140
 
@@ -4150,6 +2142,8 @@ Allows performing a bill payment operation on the platform. Send the request bod
4150
2142
 
4151
2143
  - `productId`: Number representing the product identifier (required)
4152
2144
 
2145
+ - `amount`: Number representing the amount for the transaction (required)
2146
+
4153
2147
  - `data`: Object containing additional data (required)
4154
2148
 
4155
2149
  - `cellphone`: String containing the cellphone number (required)
@@ -4223,14 +2217,28 @@ Allows performing a bill payment operation on the platform. Send the request bod
4223
2217
 
4224
2218
  - `message`: String representing the message (required)
4225
2219
 
2220
+ **Important:** This response will be returned within a timeout of **60,000 milliseconds (60 seconds)**.
2221
+
2222
+ ### Test Data
2223
+
2224
+ Use the following example values to test this endpoint in the QA environment:
2225
+
2226
+ | Field | Example Value |
2227
+ |-------|---------------|
2228
+ | productId | 202 |
2229
+ | amount | 50 |
2230
+ | data.cellphone | "3015874029" |
2231
+ | data.email | "correo@refacil.com" |
2232
+
4226
2233
  **Parámetros:**
4227
2234
 
4228
2235
  | Name | Type | Description |
4229
2236
  | --- | --- | --- |
4230
- | data | object | Campo del body: data |
4231
2237
  | productId | number | Campo del body: productId |
2238
+ | amount | number | Campo del body: amount |
2239
+ | data | object | Campo del body: data |
4232
2240
 
4233
- ### `product_directtv_go_100777`
2241
+ ### `product_directtv_go_1014005`
4234
2242
 
4235
2243
  ---
4236
2244
 
@@ -4317,6 +2325,16 @@ Allows performing a bill payment operation on the platform. Send the request bod
4317
2325
 
4318
2326
  - `message`: String representing the message (required)
4319
2327
 
2328
+ ### Test Data
2329
+
2330
+ Use the following example values to test this endpoint in the QA environment:
2331
+
2332
+ | Field | Example Value |
2333
+ |-------|---------------|
2334
+ | productId | 1014005 |
2335
+ | data.cellphone | "3104784242" |
2336
+ | data.email | "fake@refacil.com" |
2337
+
4320
2338
  **Parámetros:**
4321
2339
 
4322
2340
  | Name | Type | Description |
@@ -4324,7 +2342,7 @@ Allows performing a bill payment operation on the platform. Send the request bod
4324
2342
  | data | object | Campo del body: data |
4325
2343
  | productId | number | Campo del body: productId |
4326
2344
 
4327
- ### `product_directtv_go_1014004`
2345
+ ### `product_directtv_go_100777`
4328
2346
 
4329
2347
  ---
4330
2348
 
@@ -4411,6 +2429,16 @@ Allows performing a bill payment operation on the platform. Send the request bod
4411
2429
 
4412
2430
  - `message`: String representing the message (required)
4413
2431
 
2432
+ ### Test Data
2433
+
2434
+ Use the following example values to test this endpoint in the QA environment:
2435
+
2436
+ | Field | Example Value |
2437
+ |-------|---------------|
2438
+ | productId | 100777 |
2439
+ | data.cellphone | "3104784242" |
2440
+ | data.email | "fake@refacil.com" |
2441
+
4414
2442
  **Parámetros:**
4415
2443
 
4416
2444
  | Name | Type | Description |
@@ -4418,43 +2446,25 @@ Allows performing a bill payment operation on the platform. Send the request bod
4418
2446
  | data | object | Campo del body: data |
4419
2447
  | productId | number | Campo del body: productId |
4420
2448
 
4421
- ### `sell_essa`
2449
+ ### `product_directtv_go_1014004`
4422
2450
 
4423
2451
  ---
4424
2452
 
4425
2453
  ## Description
4426
2454
 
4427
- 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.
4428
-
4429
- **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
4430
-
4431
- ### Timeout Configuration
4432
-
4433
- The timeout value specified below is directly established by the provider and must be taken into account in integrations.
4434
-
4435
- | Parameter | Value |
4436
- | --- | --- |
4437
- | **Maximum Timeout** | 150 seconds |
2455
+ 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.
4438
2456
 
4439
2457
  ---
4440
2458
 
4441
- ## Request Schema
4442
-
4443
- - `productId`: Number representing the product identifier (required)
4444
-
4445
- - `amount`: Number representing the amount of the payment. Minimun value: 10,000 (required)
4446
-
4447
- - `sellType`: String indicating the type of the sell operation (required)
4448
-
4449
- - `hash`: String containing the hash value for the operation (required)
2459
+ ## Request Schema
2460
+
2461
+ - `productId`: Number representing the product identifier (required)
4450
2462
 
4451
2463
  - `data`: Object containing additional data (required)
4452
2464
 
4453
- - `reference`: String containing the reference number for the payment (required)
4454
-
4455
- - `cellphone`: String containing the cellphone number associated with the payment (required)
2465
+ - `cellphone`: String containing the cellphone number (required)
4456
2466
 
4457
- - `hashEchoData`: String containing the hash echo data for the operation (required)
2467
+ - `email`: String containing the email address (required)
4458
2468
 
4459
2469
 
4460
2470
  ---
@@ -4523,35 +2533,134 @@ The timeout value specified below is directly established by the provider and mu
4523
2533
 
4524
2534
  - `message`: String representing the message (required)
4525
2535
 
2536
+ ### Test Data
2537
+
2538
+ Use the following example values to test this endpoint in the QA environment:
2539
+
2540
+ | Field | Example Value |
2541
+ |-------|---------------|
2542
+ | productId | 1014004 |
2543
+ | data.cellphone | "3104784242" |
2544
+ | data.email | "fake@refacil.com" |
2545
+
4526
2546
  **Parámetros:**
4527
2547
 
4528
2548
  | Name | Type | Description |
4529
2549
  | --- | --- | --- |
4530
- | productId | number | Campo del body: productId |
4531
- | amount | number | Campo del body: amount |
4532
2550
  | data | object | Campo del body: data |
2551
+ | productId | number | Campo del body: productId |
4533
2552
 
4534
- ### `sell_energia_emsa`
2553
+ ### `query_24`
4535
2554
 
4536
2555
  ---
4537
2556
 
4538
- ## Description
2557
+ # Query Product
4539
2558
 
4540
- 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.
2559
+ ---
2560
+
2561
+ ### Description
2562
+
2563
+ Performs the pre-sale query for **PIN flows**, obtaining data such as reference, hash, and amount associated with the PIN purchase. The returned `hashEchoData` 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.
2564
+
2565
+ If the request fails with the errorCode `product.errors.disabled` or a similar code indicating that the product is inactive, the agreements must be consulted again using the search service.
4541
2566
 
4542
2567
  ---
4543
2568
 
4544
- ## Request Schema
2569
+ ### Request Body
4545
2570
 
4546
- - `productId`: Number representing the product identifier (required)
2571
+ - **`productId`** (number) **required** – Identifier of the product to query.
4547
2572
 
4548
- - `amount`: Number representing the amount of the payment (required)
2573
+ - **`queryType`** (string) **required** – Type of query associated with the PIN flow.
2574
+ Example: `ConfirmData`. Min length: 1.
4549
2575
 
4550
- - `data`: Object containing additional data (required)
2576
+ - **`data`** (object) **required** – Specific provider data for the PIN flow.
4551
2577
 
4552
- - `cellphone`: String containing the cellphone number (required)
2578
+ - **`reference`** (string) **required** – Reference associated with the PIN transaction.
4553
2579
 
4554
- - `reference`: String containing the reference number for the payment (required)
2580
+ - **`cellphone`** (string) **required** – Cellphone number associated with the PIN transaction.
2581
+
2582
+ - **`amount`** (number) **required** – Amount of the PIN purchase.
2583
+
2584
+ - **`carrierId`** (number) **required** – Identifier of the carrier/operator.
2585
+ This field **must have the same value as** **`productId`**.
2586
+
2587
+
2588
+ ---
2589
+
2590
+ ### Error Codes
2591
+
2592
+ | HTTP | `errorCode` | Message | Condition |
2593
+ | --- | --- | --- | --- |
2594
+ | 400 | `validators.productId.number` | `El campo productId debe ser de tipo Numerico` | `productId` is absent or not numeric |
2595
+ | 400 | `validators.queryType.required` | `El campo queryType es obligatorio.` | `queryType` is absent |
2596
+ | 400 | `validators.queryType.isString` | `El campo queryType debe ser de tipo string` | `queryType` is not a string |
2597
+ | 400 | `validators.queryType.isNotEmpty` | `El campo queryType no puede estar vacío.` | `queryType` is empty or whitespace-only |
2598
+ | 400 | — | `data must be an object` | `data` is present but not an object |
2599
+ | 400 | — | `ownAgreementId must be a number` | `ownAgreementId` is present but not a number |
2600
+ | 404 | `products.errors.notFound` / `product.not.found` | `Producto no encontrado` | Product does not exist or is unavailable |
2601
+ | 404 | `products.errors.disabled` | `Producto deshabilitado` | Product is disabled — re-fetch agreements using the search service |
2602
+ | 404 | `products.errors.providers.notFound` | `El producto no tiene un proveedor.` | No provider associated with the product |
2603
+ | 400 | `products.errors.metadata.invalid` | `Los metadatos del convenio no tienen un formato válido` | Agreement metadata is invalid |
2604
+ | 400 | `overdue.reference` | `Esta referencia ya se encuentra vencida.` | Reference is overdue — do not retry with same reference |
2605
+ | 400 | `closed.reference` | `Esta referencia ya se encuentra cerrada.` | Reference is closed |
2606
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
2607
+
2608
+ **Important:** This request will be processed within a timeout of **30,000 milliseconds (30 seconds)**.
2609
+
2610
+ ### Test Data
2611
+
2612
+ Use the following example values to test this endpoint in the QA environment:
2613
+
2614
+ | Field | Example Value |
2615
+ |-------|---------------|
2616
+ | queryType | "ConfirmData" |
2617
+ | productId | 231 |
2618
+ | data.carrierId | 231 |
2619
+ | data.cellphone | "3203550000" |
2620
+ | data.amount | 10000 |
2621
+ | data.reference | "1234567" |
2622
+
2623
+ **Parámetros:**
2624
+
2625
+ | Name | Type | Description |
2626
+ | --- | --- | --- |
2627
+ | queryType | string | Campo del body: queryType |
2628
+ | productId | number | Campo del body: productId |
2629
+ | data | object | Campo del body: data |
2630
+ | ownAgreementId | null | Campo del body: ownAgreementId |
2631
+
2632
+ ### `sell`
2633
+
2634
+ ---
2635
+
2636
+ ## Description
2637
+
2638
+ 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.
2639
+
2640
+ **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
2641
+
2642
+ ### Timeout Configuration
2643
+
2644
+ The timeout value specified below is directly established by the provider and must be taken into account in integrations.
2645
+
2646
+ | Parameter | Value |
2647
+ | --- | --- |
2648
+ | **Maximum Timeout** | 150 seconds |
2649
+
2650
+ ---
2651
+
2652
+ ### Request Schema
2653
+
2654
+ - **`productId`**: Number representing the product identifier (**required**).
2655
+ - **`amount`**: Number representing the amount of the payment. **Minimum value: 10,000** (**required**).
2656
+ - **`data`**: Object containing additional data (**required**):
2657
+ - **`plan`**: String that identifies the type of plan for the payment (**required**).
2658
+ The value must indicate whether the plan includes public lighting or not:
2659
+ - `AP`: Plan **with** public lighting (_Alumbrado público_).
2660
+ - `SP`: Plan **without** public lighting (_Sin alumbrado público_).
2661
+ - **`reference`**: String containing the reference number for the payment (**required**).
2662
+ - **`cellphone`**: String containing the cellphone number associated with the payment (**required**).
2663
+ - **`hashEchoData`**: String containing the hash echo data for the operation (**required**).
4555
2664
 
4556
2665
 
4557
2666
  ---
@@ -4620,6 +2729,19 @@ Allows performing a bill payment operation on the platform. Send the request bod
4620
2729
 
4621
2730
  - `message`: String representing the message (required)
4622
2731
 
2732
+ ### Test Data
2733
+
2734
+ Use the following example values to test this endpoint in the QA environment:
2735
+
2736
+ | Field | Example Value |
2737
+ |-------|---------------|
2738
+ | productId | 231 |
2739
+ | amount | 10000 |
2740
+ | data.plan | "AP" |
2741
+ | data.reference | "1234567" |
2742
+ | data.cellphone | "3203550000" |
2743
+ | data.hashEchoData | "eyJub21icmVfY2xpZW50ZSI6IkVMU1kgU0VyVklDRSIsImRpcmVjY2lvbiI6IlVSQiBWSUxMQSBWSUNUT1JJQSBDQVNBIDEwMyAtIFNBTiBNQVJUSU4iLCJkbmlfY2xpZW50ZSI6IjM5MDIyMDMxIiwiY29udHJhdG8iOiIxMjM0NTY3IiwidmFsb3JfdmVudGEiOiIxMDAwMCIsInBsYW4iOiIiLCJ0eXBlIjoiIn0=" |
2744
+
4623
2745
  **Parámetros:**
4624
2746
 
4625
2747
  | Name | Type | Description |
@@ -4627,44 +2749,148 @@ Allows performing a bill payment operation on the platform. Send the request bod
4627
2749
  | productId | number | Campo del body: productId |
4628
2750
  | amount | number | Campo del body: amount |
4629
2751
  | data | object | Campo del body: data |
2752
+ | sellType | string | Campo del body: sellType |
2753
+ | hash | string | Campo del body: hash |
4630
2754
 
4631
- ### `product_energia_prepago_epm`
2755
+ ### `query_26`
4632
2756
 
4633
2757
  ---
4634
2758
 
4635
- ## Description
4636
-
4637
- 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.
2759
+ # Query Product
4638
2760
 
4639
- ### Timeout Configuration
2761
+ ---
4640
2762
 
4641
- The timeout value specified below is directly established by the provider and must be taken into account in integrations.
2763
+ ### Description
4642
2764
 
4643
- | Parameter | Value |
4644
- |-----------|-------|
4645
- | **Maximum Timeout** | 150 seconds |
2765
+ Performs the pre-sale query for **PIN flows**, obtaining data such as reference, hash, and amount associated with the PIN purchase. The returned `hashEchoData` 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.
4646
2766
 
2767
+ If the request fails with the errorCode `product.errors.disabled` or a similar code indicating that the product is inactive, the agreements must be consulted again using the search service.
4647
2768
 
4648
2769
  ---
4649
2770
 
4650
- ## Request Schema
2771
+ ### Request Body
4651
2772
 
4652
- - `queryType`: String representing the type of query (required)
2773
+ - **`productId`** (number) **required** – Identifier of the product to query.
4653
2774
 
4654
- - `productId`: Number representing the product identifier (required)
4655
-
4656
- - `amount`: Number representing the amount for the query (required)
2775
+ - **`queryType`** (string) **required** – Type of query associated with the PIN flow.
2776
+ Example: `ConfirmData`. Min length: 1.
4657
2777
 
4658
- - `data`: Object containing additional data (required)
2778
+ - **`data`** (object) **required** – Specific provider data for the PIN flow.
4659
2779
 
4660
- - `carrierId`: Number representing the carrier identifier (required)
2780
+ - **`reference`** (string) **required** – Reference associated with the PIN transaction.
4661
2781
 
4662
- - `cellphone`: String containing the cellphone number (required)
2782
+ - **`cellphone`** (string) **required** – Cellphone number associated with the PIN transaction.
4663
2783
 
4664
- - `reference`: String containing the reference number for the query (required)
2784
+ - **`amount`** (number) **required** – Amount of the PIN purchase.
4665
2785
 
4666
- - `method`: String representing the method of the query (required)
2786
+ - **`carrierId`** (number) **required** – Identifier of the carrier/operator.
2787
+ This field **must have the same value as** **`productId`**.
4667
2788
 
2789
+ - **`plan`** (string) **required** – Identifies the type of plan associated with the transaction.
2790
+ Allowed values:
2791
+ - `AP`: Plan with public lighting (_Alumbrado público_).
2792
+
2793
+ - `SP`: Plan without public lighting (_Sin alumbrado público_).
2794
+
2795
+ - **`type`** (string) **required** – Identifies the type of payment.
2796
+ Allowed values:
2797
+ - `PT`: Total payment (_Pago Total_).
2798
+
2799
+ - `PM`: Minimum payment (_Pago Mínimo_).
2800
+
2801
+
2802
+ ---
2803
+
2804
+ ### Error Codes
2805
+
2806
+ | HTTP | `errorCode` | Message | Condition |
2807
+ | --- | --- | --- | --- |
2808
+ | 400 | `validators.productId.number` | `El campo productId debe ser de tipo Numerico` | `productId` is absent or not numeric |
2809
+ | 400 | `validators.queryType.required` | `El campo queryType es obligatorio.` | `queryType` is absent |
2810
+ | 400 | `validators.queryType.isString` | `El campo queryType debe ser de tipo string` | `queryType` is not a string |
2811
+ | 400 | `validators.queryType.isNotEmpty` | `El campo queryType no puede estar vacío.` | `queryType` is empty or whitespace-only |
2812
+ | 400 | — | `data must be an object` | `data` is present but not an object |
2813
+ | 400 | — | `ownAgreementId must be a number` | `ownAgreementId` is present but not a number |
2814
+ | 404 | `products.errors.notFound` / `product.not.found` | `Producto no encontrado` | Product does not exist or is unavailable |
2815
+ | 404 | `products.errors.disabled` | `Producto deshabilitado` | Product is disabled — re-fetch agreements using the search service |
2816
+ | 404 | `products.errors.providers.notFound` | `El producto no tiene un proveedor.` | No provider associated with the product |
2817
+ | 400 | `products.errors.metadata.invalid` | `Los metadatos del convenio no tienen un formato válido` | Agreement metadata is invalid |
2818
+ | 400 | `overdue.reference` | `Esta referencia ya se encuentra vencida.` | Reference is overdue — do not retry with same reference |
2819
+ | 400 | `closed.reference` | `Esta referencia ya se encuentra cerrada.` | Reference is closed |
2820
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
2821
+
2822
+ **Important:** This request will be processed within a timeout of **30,000 milliseconds (30 seconds)**.
2823
+
2824
+ ### Test Data
2825
+
2826
+ Use the following example values to test this endpoint in the QA environment:
2827
+
2828
+ | Field | Example Value |
2829
+ |-------|---------------|
2830
+ | queryType | "ConfirmData" |
2831
+ | productId | 230 |
2832
+ | data.carrierId | 230 |
2833
+ | data.cellphone | "3203550000" |
2834
+ | data.amount | 10000 |
2835
+ | data.reference | "1234567" |
2836
+ | data.plan | "AP" |
2837
+ | data.type | "PT" |
2838
+
2839
+ **Parámetros:**
2840
+
2841
+ | Name | Type | Description |
2842
+ | --- | --- | --- |
2843
+ | queryType | string | Campo del body: queryType |
2844
+ | productId | number | Campo del body: productId |
2845
+ | data | object | Campo del body: data |
2846
+ | ownAgreementId | null | Campo del body: ownAgreementId |
2847
+
2848
+ ### `sell_27`
2849
+
2850
+ ---
2851
+
2852
+ ## Description
2853
+
2854
+ 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.
2855
+
2856
+ **Note**: To make this request in the case of selling invoices, we need the hash and hashEchoData provided by the query response for the reference.
2857
+
2858
+ ### Timeout Configuration
2859
+
2860
+ The timeout value specified below is directly established by the provider and must be taken into account in integrations.
2861
+
2862
+ | Parameter | Value |
2863
+ | --- | --- |
2864
+ | **Maximum Timeout** | 150 seconds |
2865
+
2866
+ ---
2867
+
2868
+ ### Request Schema
2869
+
2870
+ - **`productId`** (number) **required** – Identifier of the product.
2871
+
2872
+ - **`amount`** (number) **required** – Amount of the payment.
2873
+ **Minimum value: 10,000**.
2874
+
2875
+ - **`hash`** (string) **required** – Hash value for the operation.
2876
+
2877
+ - **`data`** (object) **required** – Additional data for the payment.
2878
+
2879
+ - **`reference`** (string) **required** – Reference number for the payment.
2880
+ - **`cellphone`** (string) **required** – Cellphone number associated with the payment.
2881
+ - **`hashEchoData`** (string) **required** – Hash echo data for the operation.
2882
+ - **`plan`** (string) **required** – Identifies the type of plan associated with the transaction.
2883
+ Allowed values:
2884
+ - `AP`: Plan with public lighting (_Alumbrado público_).
2885
+ - `SP`: Plan without public lighting (_Sin alumbrado público_).
2886
+ - **`type`** (string) **required** – Identifies the type of payment.
2887
+ Allowed values:
2888
+ - `PT`: Total payment (_Pago Total_).
2889
+ - `PM`: Minimum payment (_Pago Mínimo_).
2890
+ - **`valorAseo`** (number) **required** – Cleaning/garbage charge amount associated with the transaction.
2891
+ This value **must be taken from the response of the previous `query` operation**.
2892
+ - **`valorEnergia`** (number) **required** – Energy charge amount associated with the transaction.
2893
+ This value **must be taken from the response of the previous `query` operation**.
4668
2894
 
4669
2895
  ---
4670
2896
 
@@ -4732,16 +2958,33 @@ The timeout value specified below is directly established by the provider and mu
4732
2958
 
4733
2959
  - `message`: String representing the message (required)
4734
2960
 
2961
+ ### Test Data
2962
+
2963
+ Use the following example values to test this endpoint in the QA environment:
2964
+
2965
+ | Field | Example Value |
2966
+ |-------|---------------|
2967
+ | productId | 230 |
2968
+ | amount | 10000 |
2969
+ | data.cellphone | "3203550000" |
2970
+ | data.plan | "AP" |
2971
+ | data.reference | "1234567" |
2972
+ | data.type | "PT" |
2973
+ | data.valorAseo | 5000 |
2974
+ | data.valorEnergia | 5000 |
2975
+ | data.hashEchoData | "eyJub21icmVfY2xpZW50ZSI6IkVMU1kgU0VyVklDRSIsImRpcmVjY2lvbiI6IlVSQiBWSUxMQSBWSUNUT1JJQSBDQVNBIDEwMyAtIFNBTiBNQVJUSU4iLCJkbmlfY2xpZW50ZSI6IjM5MDIyMDMxIiwiY29udHJhdG8iOiIxMjM0NTY3IiwidmFsb3JfdmVudGEiOiIxMDAwMCIsInZhbG9yX2FzZW8iOjUwMDAsInZhbG9yX2VuZXJnaWEiOjUwMDAsImNlbHVsYXIiOiIzMjAzNTUwMDAwIiwiaWRDb25maXJtYWNpb24iOiJzZGpha3NkamRqYS1kYXMwZGRhbnNkMDItZnNhZGthc2RrNTYiLCJwbGFuIjoiQVAiLCJ0eXBlIjoiUFQifQ==" |
2976
+
4735
2977
  **Parámetros:**
4736
2978
 
4737
2979
  | Name | Type | Description |
4738
2980
  | --- | --- | --- |
4739
- | queryType | string | Campo del body: queryType |
4740
2981
  | productId | number | Campo del body: productId |
4741
2982
  | amount | number | Campo del body: amount |
4742
2983
  | data | object | Campo del body: data |
2984
+ | sellType | string | Campo del body: sellType |
2985
+ | hash | string | Campo del body: hash |
4743
2986
 
4744
- ### `query_63`
2987
+ ### `query_28`
4745
2988
 
4746
2989
  Here you will find all the endpoints related to Transfiya correspondent selling.
4747
2990
 
@@ -4989,6 +3232,34 @@ curl --location --globoff 'https://acme.refacil.local/transfiYaNotifications' \
4989
3232
 
4990
3233
  **Step 9: Transaction marked as failed:** If the transaction status changes to "REJECTED," the transaction is officially marked as failed within the system.
4991
3234
 
3235
+ ---
3236
+
3237
+ ## Request Schema
3238
+
3239
+ - `productId`: Number representing the product identifier (required)
3240
+
3241
+ - `amount`: Number representing the transaction amount in cents (required)
3242
+
3243
+ - `webhookUrl`: String containing the URL to receive transaction status notifications (required)
3244
+
3245
+ - `data`: Object containing additional transaction data (required)
3246
+
3247
+ - `cellphone`: String containing the customer's cellphone number (required)
3248
+
3249
+ - `bankName`: String containing the target bank name (required)
3250
+
3251
+
3252
+ ---
3253
+
3254
+ ### Test Phone Numbers
3255
+
3256
+ Use the following phone numbers to simulate successful or failed withdrawal transactions in the testing environment:
3257
+
3258
+ | Phone Number | Expected Result |
3259
+ |--------------|----------------|
3260
+ | 3051000090 | Successful |
3261
+ | 3051000080 | Failed |
3262
+
4992
3263
  **Parámetros:**
4993
3264
 
4994
3265
  | Name | Type | Description |
@@ -5145,6 +3416,34 @@ Automatically rejected: 3002491283
5145
3416
 
5146
3417
  - **No commission processing**: Since the transaction failed, no commissions are processed for this transaction.
5147
3418
 
3419
+ ---
3420
+
3421
+ ## Request Schema
3422
+
3423
+ - `productId`: Number representing the product identifier (required)
3424
+
3425
+ - `amount`: Number representing the deposit amount in cents (required)
3426
+
3427
+ - `webhookUrl`: String containing the URL to receive transaction status notifications (required)
3428
+
3429
+ - `data`: Object containing additional transaction data (required)
3430
+
3431
+ - `cellphone`: String containing the customer's cellphone number (required)
3432
+
3433
+ - `bankName`: String containing the target bank name for the deposit (required)
3434
+
3435
+
3436
+ ---
3437
+
3438
+ ### Test Phone Numbers
3439
+
3440
+ Use the following phone numbers to simulate successful or failed deposit transactions in the testing environment:
3441
+
3442
+ | Phone Number | Expected Result |
3443
+ |--------------|----------------|
3444
+ | 3051000002 | Successful |
3445
+ | 3002491283 | Failed |
3446
+
5148
3447
  **Parámetros:**
5149
3448
 
5150
3449
  | Name | Type | Description |
@@ -5160,6 +3459,48 @@ Here you will find all the endpoints related to multi-product sales.
5160
3459
 
5161
3460
  **Note:** If you need information about parameterized commissions, you should consult your sales agent.
5162
3461
 
3462
+ ---
3463
+
3464
+ ### Sell — Error Codes
3465
+
3466
+ The following error codes apply to all sell operations regardless of product type.
3467
+
3468
+ ---
3469
+
3470
+ #### POST /sells/sell
3471
+
3472
+ | HTTP | `errorCode` | Message | Condition |
3473
+ |------|-------------|---------|----------|
3474
+ | 400 | `validators.productId.required` | `El campo productId es obligatorio.` | `productId` is absent |
3475
+ | 400 | `validators.productId.number` | `El campo productId debe ser de tipo Numerico` | `productId` is not a number |
3476
+ | 400 | — | `data must be an object` | `data` is absent or not an object |
3477
+ | 400 | `validators.moveTmpBalance.isBoolean` | `El campo moveTmpBalance debe ser de tipo boolean.` | `moveTmpBalance` is present but not a boolean |
3478
+ | 400 | `validators.sellType.isString` / `validators.sellType.isNotEmpty` | `El campo sellType debe ser de tipo string` / `El campo sellType no puede estar vacío.` | `sellType` is present but invalid |
3479
+ | 400 | `validators.hash.isString` / `validators.hash.isNotEmpty` | `El campo hash debe ser de tipo string` / `El campo hash no puede estar vacío.` | `hash` is present but invalid |
3480
+ | 400 | `validators.webhookUrl.isString` / `validators.webhookUrl.isNotEmpty` | `El campo webhookUrl debe ser de tipo string` / `El campo webhookUrl no puede estar vacío.` | `webhookUrl` is present but invalid |
3481
+ | 400 | `validators.terminalId.isNumber` | `El ID de terminal debe ser un valor numérico.` | `terminalId` is present but not numeric |
3482
+ | 400 | `validators.commerceId.isNumber` | `El ID de comercio debe ser un valor numérico.` | `commerceId` is present but not numeric |
3483
+ | 400 | `validators._password.isString` | `El campo _password debe ser de tipo string` | `_password` is present but not a string |
3484
+ | 400 | — | `expiresIn must be a number` | `expiresIn` is present but not a number |
3485
+ | 404 | `product.not.found` / `products.errors.notFound` | `Producto no encontrado` | Product does not exist |
3486
+ | 404 | `products.errors.disabled` | `Producto deshabilitado` | Product is disabled |
3487
+ | 404 | `products.errors.providers.notFound` | `El producto no tiene un proveedor.` | No provider associated with the product |
3488
+ | 400 | `products.errors.userBalance` | `El usuario no cuenta con saldo para la transacción` | Insufficient balance |
3489
+ | 400 | `products.errors.transactionDuplicate` | `Transacción duplicada` | Duplicate transaction detected — do not retry |
3490
+ | 400 | `server.error.core` | `Solicitud duplicada. Por favor, inténtelo de nuevo.` | Request already in progress — retry after a few seconds |
3491
+ | 400 | `products.errors.blacklisted` | `Al parecer estás siendo victima de hurto, hemos bloqueado tu cuenta por seguridad` | Reference number is on a security blacklist — do not retry |
3492
+ | 400 | `AMOUNT_OUT_OF_RANGE` | `El monto debe ser mayor o igual a {min}` / `menor o igual a {max}` | Amount is outside the allowed range for the product |
3493
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
3494
+
3495
+ ---
3496
+
3497
+ #### GET /sells/sale/:saleId
3498
+
3499
+ | HTTP | `errorCode` | Message | Condition |
3500
+ |------|-------------|---------|----------|
3501
+ | 404 | `server.notFound` | `Nada encontrado` | Sale not found or does not belong to the authenticated user |
3502
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
3503
+
5163
3504
  ---
5164
3505
 
5165
3506
  ## Description
@@ -5207,111 +3548,6 @@ This method allows you to obtain the details of a sale by providing the unique i
5207
3548
  | hash | string | Campo del body: hash |
5208
3549
  | data | object | Campo del body: data |
5209
3550
 
5210
- ### `bank_get_transfiya_banks`
5211
-
5212
- ---
5213
-
5214
- ### Description
5215
-
5216
- Return the banks that support Transfiya for the specified transfer type.
5217
-
5218
- Below is a list of authorized banks:
5219
-
5220
- | BANK | LOGO |
5221
- | --- | --- |
5222
- | BANCOLOMBIA | <img src="https://assets.refacil.co/banks/bancolombia.png" alt=""> |
5223
- | BANCO AGRARIO | <img src="https://assets.refacil.co/banks/bancoagrario.png" alt=""> |
5224
- | BANCO AV VILLAS | <img src="https://assets.refacil.co/banks/bancoavvillas.png" alt=""> |
5225
- | BANCO CAJA SOCIAL | <img src="https://assets.refacil.co/banks/bancocajasocial.png" alt=""> |
5226
- | BANCO COOPERATIVO COOPCENTRAL | <img src="https://assets.refacil.co/banks/bancocooperativocoopcentral.png" alt=""> |
5227
- | BANCO DAVIVIENDA | <img src="https://assets.refacil.co/banks/bancodavivienda.png" alt=""> |
5228
- | BANCO DE BOGOTA | <img src="https://assets.refacil.co/banks/bancodebogota.png" alt=""> |
5229
- | BANCO DE OCCIDENTE | <img src="https://assets.refacil.co/banks/bancodeoccidente.png" alt=""> |
5230
- | BANCO ITAU | <img src="https://assets.refacil.co/banks/itau.png" alt=""> |
5231
- | BANCO SERFINANZA | <img src="https://assets.refacil.co/banks/bancoserfinanza.png" alt=""> |
5232
- | CONFIAR COOPERATIVA FINANCIERA | <img src="https://assets.refacil.co/banks/confiarcooperativafinanciera.png" alt=""> |
5233
- | DALE | <img src="https://assets.refacil.co/banks/dale.png" alt=""> |
5234
- | DAVIPLATA | <img src="https://assets.refacil.co/banks/daviplata.png" alt=""> |
5235
- | MOVII S.A. | <img src="https://assets.refacil.co/banks/movii.png" alt=""> |
5236
- | NEQUI | <img src="https://assets.refacil.co/banks/nequi.png" alt=""> |
5237
- | SCOTIABANK COLPATRIA | <img src="https://assets.refacil.co/banks/scotiabankcolpatria.png" alt=""> |
5238
- | BANCAMIA SA | <img src="https://assets.refacil.co/banks/bancamia.png" alt=""> |
5239
-
5240
- ---
5241
-
5242
- ### Response schema
5243
-
5244
- - `messageCode`: String code indicating the operation result (required)
5245
-
5246
- - `message`: String containing a message about the operation result (required)
5247
-
5248
- - data: Object containing additional response data (required)
5249
-
5250
- - `banks`: Array of bank objects (required)
5251
-
5252
- - `label`: String representing the bank label (required)
5253
-
5254
- - `value`: Number representing the bank value (required)
5255
-
5256
- - `image`: String representing the bank image filename (required)
5257
-
5258
- ### `requirement_terms_and_conditions`
5259
-
5260
- ---
5261
-
5262
- ### Description
5263
-
5264
- Get privacy policy, terms and conditions and data treatment policy, then confirm them in the /requirement/confirm-terms-and-conditions service.
5265
-
5266
- ---
5267
-
5268
- ### Request Body
5269
-
5270
- This endpoint does not require a request body.
5271
-
5272
- ---
5273
-
5274
- ### Response
5275
-
5276
- - `message`: String containing a message about the operation result (required)
5277
-
5278
- - `messageCode`: String code indicating the operation result (required)
5279
-
5280
- - `data`: Object containing additional response data (required)
5281
-
5282
- ### `requirement_con_ter_and_conditions`
5283
-
5284
- ---
5285
-
5286
- ### Description
5287
-
5288
- It allows you to transfer funds from the main users money bag to the bag of the user who is being added. The token of the user who will be the beneficiary and the amount must be added.
5289
-
5290
- ---
5291
-
5292
- ### Request Body
5293
-
5294
- - userToken (string, required): The user token for which the balance will be updated
5295
-
5296
- - amount (number, required): Amount to be updated
5297
-
5298
-
5299
- ---
5300
-
5301
- ### Response
5302
-
5303
- - `message`: String containing a message about the operation result (required)
5304
-
5305
- - `messageCode`: String code indicating the operation result (required)
5306
-
5307
- - `data`: Object containing additional response data.
5308
-
5309
- **Parámetros:**
5310
-
5311
- | Name | Type | Description |
5312
- | --- | --- | --- |
5313
- | checkDataTreatment | boolean | Campo del body: checkDataTreatment |
5314
-
5315
3551
  ### `collection_submit_transaction`
5316
3552
 
5317
3553
  ---
@@ -5341,6 +3577,17 @@ This endpoint is in charge of reporting the collections
5341
3577
 
5342
3578
  - `code`: Respond correctly in case of success
5343
3579
 
3580
+ ---
3581
+
3582
+ ### Error Codes
3583
+
3584
+ | HTTP | `errorCode` | Message | Condition |
3585
+ |------|-------------|---------|----------|
3586
+ | 400 | — | `{field} must be a number` | A required numeric field (`id_cliente`, `id_transaccion`, `convenio`, `Valor`) is absent or not numeric |
3587
+ | 400 | — | `{field} must be a string` | A required string field (`Fecha`, `Hora`) is absent or not a string |
3588
+ | 401 | `error.auth.failed` | `Error en la autenticación` | Invalid or expired authentication token. Re-authenticate and retry the request. |
3589
+ | 500 | `server.error` | `Mensaje del error interno` or `Critical internal server error occurred!` | Internal failure when registering the transaction — retry; if it persists, notify support |
3590
+
5344
3591
  **Parámetros:**
5345
3592
 
5346
3593
  | Name | Type | Description |