collection-api-refacil-mcp 1.0.0 → 1.0.2

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/LICENSE CHANGED
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025 Refacil Team
3
+ Copyright (c) 2026 Refacil Team
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
package/README.md CHANGED
@@ -297,7 +297,8 @@ This endpoint handles financial transactions and collections. It processes payme
297
297
  | `agreementId` | Integer | ✅ | ID of the agreement (company) that is making the payment |
298
298
  | `amount` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |
299
299
  | `date` | String | ✅ | Transaction date in format `YYYY-MM-DD` |
300
- | `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone) |
300
+ | `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone)|
301
+ | `ip` | String | ✅ | IP address of the client |
301
302
 
302
303
  ---
303
304
 
@@ -455,6 +456,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
455
456
  - **Standard error handling**: predictable codes/messages simplify UX and support.
456
457
  - **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.
457
458
  - **Observability**: traceability via `transactionId` from query to payment.
459
+ - **Multiple payment values**: support for references with multiple payment options via `paymentOrder`.
458
460
 
459
461
 
460
462
  <img src="https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n" width="752" height="1429">
@@ -478,6 +480,18 @@ To establish a secure connection with our clients' APIs, we will generate and pr
478
480
  | `code` | string | The code related to the bill. |
479
481
  | `user_code` | string | The user code related to the bill. |
480
482
  | `additional_data` | array | An array of additional data containing label and value pairs. |
483
+ | `paymentOrder` | object | Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main `amount` field may be optional as the values from `paymentOrder.items` will be used. |
484
+
485
+ #### 📋 PaymentOrder Structure
486
+
487
+ When `paymentOrder` is present in the response, it contains the following structure:
488
+
489
+ | **Field** | **Type** | **Description** |
490
+ | --- | --- | --- |
491
+ | `items` | array | List of available payment values (maximum 10 values). Each item contains: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |
492
+ | `selectionMode` | string | Indicates whether a single value ('single') or multiple values ('multiple') can be selected. |
493
+
494
+ **Note**: When `paymentOrder` is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the `items` array to present payment options to the user, and then send the selected items in the `paymentOrderItems` field when submitting the transaction via `submitTransaction`.
481
495
 
482
496
  **Parámetros:**
483
497
 
@@ -518,6 +532,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
518
532
  - **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.
519
533
  - **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.
520
534
  - **Operational scalability**: async processing absorbs traffic spikes.
535
+ - **Multiple payment items**: support for partial payments or multiple concepts within a single transaction via `paymentOrderItems`.
521
536
 
522
537
 
523
538
  <img src="https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n" width="960" height="1544">
@@ -527,12 +542,25 @@ To establish a secure connection with our clients' APIs, we will generate and pr
527
542
  | **Field** | **Type** | **Required** | **Description** |
528
543
  | --- | --- | --- | --- |
529
544
  | `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |
530
- | `trasanctionId` | string | ✅ | The transaction ID. |
545
+ | `transactionId` | string | ✅ | The transaction ID. |
531
546
  | `reference` | string | ✅ | The reference for the transaction. |
532
547
  | `amount` | number | ✅ | The amount of the transaction. |
548
+ | `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |
533
549
  | `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |
534
550
  | `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |
535
551
 
552
+ #### 📋 PaymentOrderItems Structure
553
+
554
+ When using `paymentOrderItems`, each element in the array must have the following structure:
555
+
556
+ | **Field** | **Type** | **Required** | **Description** |
557
+ | --- | --- | --- | --- |
558
+ | `id` | number | ✅ | Unique numeric identifier for the payment value |
559
+ | `description` | string | ✅ | Description of the payment value (maximum 50 characters) |
560
+ | `amount` | number | ✅ | Numeric value to be paid |
561
+
562
+ **Note**: When `paymentOrderItems` is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.
563
+
536
564
  ### 📤 Response Body Parameters
537
565
 
538
566
  | **Field** | **Type** | **Description** |
@@ -552,6 +580,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
552
580
  | transactionId | string | Campo del body: transactionId |
553
581
  | reference | string | Campo del body: reference |
554
582
  | amount | number | Campo del body: amount |
583
+ | paymentOrderItems | array | Campo del body: paymentOrderItems |
555
584
  | date | string | Campo del body: date |
556
585
  | time | string | Campo del body: time |
557
586
 
@@ -585,6 +614,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
585
614
  - **Risk control**: safe, auditable reversal for external failures/inconsistencies.
586
615
  - **Full traceability**: reversal events and contingency log.
587
616
  - **Business continuity**: formal channel for emergencies without invasive manual actions.
617
+ - **Multiple payment items support**: allows rollback of transactions with multiple payment concepts via `paymentOrderItems`.
588
618
 
589
619
  <img src="https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n" width="960" height="1805">
590
620
 
@@ -596,9 +626,22 @@ To establish a secure connection with our clients' APIs, we will generate and pr
596
626
  | `transactionId` | string | ✅ | The transaction ID. |
597
627
  | `reference` | string | ✅ | The reference for the transaction. |
598
628
  | `amount` | number | ✅ | The amount of the transaction. |
629
+ | `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |
599
630
  | `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |
600
631
  | `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |
601
632
 
633
+ #### 📋 PaymentOrderItems Structure
634
+
635
+ When using `paymentOrderItems`, each element in the array must have the following structure:
636
+
637
+ | **Field** | **Type** | **Required** | **Description** |
638
+ | --- | --- | --- | --- |
639
+ | `id` | number | ✅ | Unique numeric identifier for the payment value |
640
+ | `description` | string | ✅ | Description of the payment value (maximum 50 characters) |
641
+ | `amount` | number | ✅ | Numeric value to be paid |
642
+
643
+ **Note**: When `paymentOrderItems` is provided, it allows rollback of transactions with multiple payment concepts. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.
644
+
602
645
  #### 📤 Response Body Parameters
603
646
 
604
647
  | **Field** | **Type** | **Description** |
@@ -618,6 +661,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
618
661
  | transactionId | string | Campo del body: transactionId |
619
662
  | reference | string | Campo del body: reference |
620
663
  | amount | number | Campo del body: amount |
664
+ | paymentOrderItems | array | Campo del body: paymentOrderItems |
621
665
  | date | string | Campo del body: date |
622
666
  | time | string | Campo del body: time |
623
667
 
@@ -652,6 +696,7 @@ To establish a secure connection with our clients' APIs, we will generate and pr
652
696
  - **Security**: signature/auth validation for trusted origin.
653
697
  - **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.
654
698
  - **Simple integration**: compact contract (status/timestamps/ids), quick to implement.
699
+ - **Multiple payment items**: includes payment order items when transactions involve multiple payment concepts.
655
700
 
656
701
 
657
702
  ### 📥 Request Body Parameters
@@ -666,6 +711,19 @@ To establish a secure connection with our clients' APIs, we will generate and pr
666
711
  | updatedAt | string | ✅ | Date and time of last update (format: "YYYY-MM-DD HH:mm:ss") |
667
712
  | status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |
668
713
  | sign | string | ✅ | Security signature to validate message integrity |
714
+ | paymentOrderItems | array | ❌ | Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: `id` (number, required), `description` (string, required), and `amount` (number, required). |
715
+
716
+ #### 📋 PaymentOrderItems Structure
717
+
718
+ When `paymentOrderItems` is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the `submitTransaction` request:
719
+
720
+ | **Field** | **Type** | **Required** | **Description** |
721
+ | --- | --- | --- | --- |
722
+ | `id` | number | ✅ | Unique numeric identifier for the payment value |
723
+ | `description` | string | ✅ | Description of the payment value |
724
+ | `amount` | number | ✅ | Numeric value that was paid |
725
+
726
+ **Note**: When `paymentOrderItems` is present, the `amount` field represents the total sum of all items. Verify that the sum of `paymentOrderItems[].amount` equals the total `amount`.
669
727
 
670
728
  ### 📤 Response Body Parameters
671
729
 
@@ -700,6 +758,7 @@ signature = crypto.createHmac("sha1", HASH_KEY).update(signature).digest("hex");
700
758
  | updatedAt | string | Campo del body: updatedAt |
701
759
  | status | number | Campo del body: status |
702
760
  | sign | string | Campo del body: sign |
761
+ | paymentOrderItems | array | Campo del body: paymentOrderItems |
703
762
 
704
763
 
705
764
  ## 📝 Logs
@@ -30,7 +30,7 @@ export const resources = [
30
30
  "name": "Own Network Collection - Documentation",
31
31
  "description": "## 📝Recommendations\n\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\n \n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\n \n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\n \n\n## 🔐Authorization\n\nTo establish a secure connection with our clients' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\n\n**Token Format:**\n\n`Authorization: Token {generate_token_value}`\n\n**Example:**\n\n`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**`",
32
32
  "mimeType": "text/markdown",
33
- "content": "# Own Network Collection\n\n## 📝Recommendations\n\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\n \n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\n \n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\n \n\n## 🔐Authorization\n\nTo establish a secure connection with our clients' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\n\n**Token Format:**\n\n`Authorization: Token {generate_token_value}`\n\n**Example:**\n\n`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**`\n\n## Endpoints\n\n### jwt-validate\n\n**Method**: `POST`\n\n**Path**: `/auth/validate`\n\nThis endpoint allows you to validate a JWT token by sending an HTTP POST request to {{base_url}}/auth/validate.\n\n**Base URL:**\n\n| **Enviroment** | **Value** |\n| --- | --- |\n| QA | [https://collection-api.qa.refacil.co](https://collection-api.qa.refacil.co) |\n| PROD | [https://collection-api.refacil.co](https://collection-api.refacil.co) |\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| secretId | string | ✅ | The secret identifier used to validate the token. **This secretId will be shared by us with the client** |\n| token | string | ✅ | The JWT token to be validated |\n\n### 📤 Response body parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | The HTTP status code of the response |\n| message | string | A message indicating the result of the operation |\n| date | number | The timestamp of the response |\n| payload | object | The response payload containing validation results |\n| payload.valid | boolean | Indicates whether the token is valid or not |\n| payload.message | string | A message related to the validation result |\n| payload.data | object | Optional decoded token data if the token is valid |\n\n### ping\n\n**Method**: `GET`\n\n**Path**: `/ping/`\n\nThis endpoint sends an HTTP GET request to {{customer.domain.com}}/ping/ in order to check the availability of the server.\n\n### Benefits 🩺\n\n- **Fail-fast**: detects unavailability before critical operations.\n \n- **SLO-aware**: monitor per-client availability and trigger mitigations.\n \n- **Proactive ops**: enables circuit breakers and routing policies.\n \n\nThe request does not contain a request body.\n\n### Response\n\n- Status: 200\n \n- Body: \"pong\"\n\n### queryBill\n\n**Method**: `POST`\n\n**Path**: `/queryBill/`\n\nThis endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |\n\n### submitTransaction\n\n**Method**: `POST`\n\n**Path**: `/submitTransaction/`\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `trasanctionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |\n\n### rollbackTransaction\n\n**Method**: `POST`\n\n**Path**: `/rollbackTransaction/`\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\n### webhook\n\n**Method**: `POST`\n\n**Path**: `/webhook/`\n\nThis endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\n"
33
+ "content": "# Own Network Collection\n\n## 📝Recommendations\n\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\n \n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\n \n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\n \n\n## 🔐Authorization\n\nTo establish a secure connection with our clients' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\n\n**Token Format:**\n\n`Authorization: Token {generate_token_value}`\n\n**Example:**\n\n`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**`\n\n## Endpoints\n\n### jwt-validate\n\n**Method**: `POST`\n\n**Path**: `/auth/validate`\n\nThis endpoint allows you to validate a JWT token by sending an HTTP POST request to {{base_url}}/auth/validate.\n\n**Base URL:**\n\n| **Enviroment** | **Value** |\n| --- | --- |\n| QA | [https://collection-api.qa.refacil.co](https://collection-api.qa.refacil.co) |\n| PROD | [https://collection-api.refacil.co](https://collection-api.refacil.co) |\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| secretId | string | ✅ | The secret identifier used to validate the token. **This secretId will be shared by us with the client** |\n| token | string | ✅ | The JWT token to be validated |\n\n### 📤 Response body parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | The HTTP status code of the response |\n| message | string | A message indicating the result of the operation |\n| date | number | The timestamp of the response |\n| payload | object | The response payload containing validation results |\n| payload.valid | boolean | Indicates whether the token is valid or not |\n| payload.message | string | A message related to the validation result |\n| payload.data | object | Optional decoded token data if the token is valid |\n\n### ping\n\n**Method**: `GET`\n\n**Path**: `/ping/`\n\nThis endpoint sends an HTTP GET request to {{customer.domain.com}}/ping/ in order to check the availability of the server.\n\n### Benefits 🩺\n\n- **Fail-fast**: detects unavailability before critical operations.\n \n- **SLO-aware**: monitor per-client availability and trigger mitigations.\n \n- **Proactive ops**: enables circuit breakers and routing policies.\n \n\nThe request does not contain a request body.\n\n### Response\n\n- Status: 200\n \n- Body: \"pong\"\n\n### queryBill\n\n**Method**: `POST`\n\n**Path**: `/queryBill/`\n\nThis endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n- **Multiple payment values**: support for references with multiple payment options via `paymentOrder`.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |\n| `paymentOrder` | object | Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main `amount` field may be optional as the values from `paymentOrder.items` will be used. |\n\n#### 📋 PaymentOrder Structure\n\nWhen `paymentOrder` is present in the response, it contains the following structure:\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `items` | array | List of available payment values (maximum 10 values). Each item contains: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `selectionMode` | string | Indicates whether a single value ('single') or multiple values ('multiple') can be selected. |\n\n**Note**: When `paymentOrder` is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the `items` array to present payment options to the user, and then send the selected items in the `paymentOrderItems` field when submitting the transaction via `submitTransaction`.\n\n### submitTransaction\n\n**Method**: `POST`\n\n**Path**: `/submitTransaction/`\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n- **Multiple payment items**: support for partial payments or multiple concepts within a single transaction via `paymentOrderItems`.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |\n\n### rollbackTransaction\n\n**Method**: `POST`\n\n**Path**: `/rollbackTransaction/`\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n- **Multiple payment items support**: allows rollback of transactions with multiple payment concepts via `paymentOrderItems`.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows rollback of transactions with multiple payment concepts. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\n### webhook\n\n**Method**: `POST`\n\n**Path**: `/webhook/`\n\nThis endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n- **Multiple payment items**: includes payment order items when transactions involve multiple payment concepts.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n| paymentOrderItems | array | ❌ | Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: `id` (number, required), `description` (string, required), and `amount` (number, required). |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen `paymentOrderItems` is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the `submitTransaction` request:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value |\n| `amount` | number | ✅ | Numeric value that was paid |\n\n**Note**: When `paymentOrderItems` is present, the `amount` field represents the total sum of all items. Verify that the sum of `paymentOrderItems[].amount` equals the total `amount`.\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\n"
34
34
  },
35
35
  {
36
36
  "uri": "postman://collection/refacil-collection-api/endpoint/get/auth/jwt",
@@ -49,9 +49,9 @@ export const resources = [
49
49
  {
50
50
  "uri": "postman://collection/refacil-collection-api/endpoint/post/collection/submit-payment",
51
51
  "name": "POST /collection/submit-payment - Endpoint Documentation",
52
- "description": "## Description\n\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `reference` | Integer | ✅ | Unique transaction reference number |\n| `agreementId` | Integer | ✅ | ID of the agreement (company) that is making the payment |\n| `amount` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\n| `date` | String | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone) |\n\n---\n\n### 🏢 Available Agreements\n\n| `agreementId` | Company Name |\n| --- | --- |\n| `18252` | Apostar |\n| `18253` | Susuerte |\n\n⚠️ Only the above `agreementId`s are currently authorized to use this service.\n\n---",
52
+ "description": "## Description\n\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `reference` | Integer | ✅ | Unique transaction reference number |\n| `agreementId` | Integer | ✅ | ID of the agreement (company) that is making the payment |\n| `amount` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\n| `date` | String | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone)|\n| `ip` | String | ✅ | IP address of the client |\n\n---\n\n### 🏢 Available Agreements\n\n| `agreementId` | Company Name |\n| --- | --- |\n| `18252` | Apostar |\n| `18253` | Susuerte |\n\n⚠️ Only the above `agreementId`s are currently authorized to use this service.\n\n---",
53
53
  "mimeType": "text/markdown",
54
- "content": "# Submit Payment\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/collection/submit-payment`\n\n## Description\n\n## Description\n\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `reference` | Integer | ✅ | Unique transaction reference number |\n| `agreementId` | Integer | ✅ | ID of the agreement (company) that is making the payment |\n| `amount` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\n| `date` | String | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone) |\n\n---\n\n### 🏢 Available Agreements\n\n| `agreementId` | Company Name |\n| --- | --- |\n| `18252` | Apostar |\n| `18253` | Susuerte |\n\n⚠️ Only the above `agreementId`s are currently authorized to use this service.\n\n---\n\n## Headers\n\n- **Content-Type**: application/json\n- **x-secret-id**: 64c0f2660d7b59d35197e5c77a5543c1aaf94c17************\n- **Authorization**: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w\n- **x-one-time-token**: 741e5c62-758d-4a3f-8ba4-4c2a0e2c0828\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"reference\": 100863,\n \"agreementId\": 2,\n \"amount\": 10000,\n \"date\": \"2025-03-30\",\n \"time\": \"01:30\"\n}\n```\n\n"
54
+ "content": "# Submit Payment\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/collection/submit-payment`\n\n## Description\n\n## Description\n\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `reference` | Integer | ✅ | Unique transaction reference number |\n| `agreementId` | Integer | ✅ | ID of the agreement (company) that is making the payment |\n| `amount` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\n| `date` | String | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | String | ✅ | Transaction time in format `HH:mm` (24-hour clock, Bogotá time zone)|\n| `ip` | String | ✅ | IP address of the client |\n\n---\n\n### 🏢 Available Agreements\n\n| `agreementId` | Company Name |\n| --- | --- |\n| `18252` | Apostar |\n| `18253` | Susuerte |\n\n⚠️ Only the above `agreementId`s are currently authorized to use this service.\n\n---\n\n## Headers\n\n- **Content-Type**: application/json\n- **x-secret-id**: 64c0f2660d7b59d35197e5c77a5543c1aaf94c17************\n- **Authorization**: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJuYW1lIjoiUGlwZSBUZXN0IiwiY3VzdG9tZXJJZCI6NzgyLCJpYXQiOjE3NTE4OTc5MzUsImV4cCI6MTc1MTkwMTUzNX0.dHKl4DduA8ySqG2KkSVoGWLi0IujplL0olDopsUR4L_bQXhJKBfTg98JukRd8JpOXSOtKwy6TgPiiLA7AMFedbthfkAR_fFBw7Bxvr88vIMfj6BkCIUm2HdO_CX1bkLK0AxMRJx1Qvvq9eyE3ojhDrrgU6QndcCMjI3EQ0EFZVuGzKkw2JEa3QygUbtN5O6sGIJxMS6fOjFqAwoLHRzY16kztWtqK3EYQNYD-eH9rt7-cdMiZ_3sxxOBKi8NPKJdlCQ3d8YA6kcdYwK74nEj6SR_19uy6lY_5AMRE6jrWyad2BwjZ74uuXtv5X3JflE5rpANe7tYUTASS-9Dwb9x3w\n- **x-one-time-token**: 741e5c62-758d-4a3f-8ba4-4c2a0e2c0828\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"reference\": 100863,\n \"agreementId\": 2,\n \"amount\": 10000,\n \"date\": \"2025-03-30\",\n \"time\": \"01:30\"\n}\n```\n\n"
55
55
  },
56
56
  {
57
57
  "uri": "postman://collection/refacil-collection-api/endpoint/post/auth/validate",
@@ -70,30 +70,30 @@ export const resources = [
70
70
  {
71
71
  "uri": "postman://collection/refacil-collection-api/endpoint/post/querybill",
72
72
  "name": "POST /queryBill/ - Endpoint Documentation",
73
- "description": "This endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |",
73
+ "description": "This endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n- **Multiple payment values**: support for references with multiple payment options via `paymentOrder`.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |\n| `paymentOrder` | object | Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main `amount` field may be optional as the values from `paymentOrder.items` will be used. |\n\n#### 📋 PaymentOrder Structure\n\nWhen `paymentOrder` is present in the response, it contains the following structure:\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `items` | array | List of available payment values (maximum 10 values). Each item contains: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `selectionMode` | string | Indicates whether a single value ('single') or multiple values ('multiple') can be selected. |\n\n**Note**: When `paymentOrder` is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the `items` array to present payment options to the user, and then send the selected items in the `paymentOrderItems` field when submitting the transaction via `submitTransaction`.",
74
74
  "mimeType": "text/markdown",
75
- "content": "# queryBill\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/queryBill/`\n\n## Description\n\nThis endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"reference\": \"52851385\",\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
75
+ "content": "# queryBill\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/queryBill/`\n\n## Description\n\nThis endpoint allows you to query a bill by sending an HTTP POST request to `{{customer.domain.com}}/queryBill/`.\n\n### Benefits 🔎\n\n- **Real-time validation**: fresh billing info from the originator.\n- **Standard error handling**: predictable codes/messages simplify UX and support.\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\n- **Observability**: traceability via `transactionId` from query to payment.\n- **Multiple payment values**: support for references with multiple payment options via `paymentOrder`.\n \n\n<img src=\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\" width=\"752\" height=\"1429\">\n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `reference` | string | ✅ | ID of the agreement (company) that is making the payment |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### **📤 Response body parameters**\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message related to the query. |\n| `reference` | string | The reference of the bill. |\n| `amount` | number | The amount of the bill. |\n| `code` | string | The code related to the bill. |\n| `user_code` | string | The user code related to the bill. |\n| `additional_data` | array | An array of additional data containing label and value pairs. |\n| `paymentOrder` | object | Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main `amount` field may be optional as the values from `paymentOrder.items` will be used. |\n\n#### 📋 PaymentOrder Structure\n\nWhen `paymentOrder` is present in the response, it contains the following structure:\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `items` | array | List of available payment values (maximum 10 values). Each item contains: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `selectionMode` | string | Indicates whether a single value ('single') or multiple values ('multiple') can be selected. |\n\n**Note**: When `paymentOrder` is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the `items` array to present payment options to the user, and then send the selected items in the `paymentOrderItems` field when submitting the transaction via `submitTransaction`.\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"reference\": \"52851385\",\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
76
76
  },
77
77
  {
78
78
  "uri": "postman://collection/refacil-collection-api/endpoint/post/submittransaction",
79
79
  "name": "POST /submitTransaction/ - Endpoint Documentation",
80
- "description": "This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `trasanctionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |",
80
+ "description": "This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n- **Multiple payment items**: support for partial payments or multiple concepts within a single transaction via `paymentOrderItems`.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |",
81
81
  "mimeType": "text/markdown",
82
- "content": "# submitTransaction\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/submitTransaction/`\n\n## Description\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `trasanctionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"transactionId\": \"5\",\n \"reference\": \"52851385\",\n \"amount\": 77926,\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
82
+ "content": "# submitTransaction\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/submitTransaction/`\n\n## Description\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\n\n### Benefits 💳\n\n- **Transactional idempotency**: `transactionId` avoids double charges on retries/timeouts.\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\n- **Operational scalability**: async processing absorbs traffic spikes.\n- **Multiple payment items**: support for partial payments or multiple concepts within a single transaction via `paymentOrderItems`.\n \n\n<img src=\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\" width=\"960\" height=\"1544\">\n\n### 📥 Request Body Parameters\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message regarding the transaction submission. |\n| `reference` | string | The reference for the submitted transaction. |\n| `amount` | number | The amount of the submitted transaction. |\n| `code` | string | A code related to the transaction. |\n| `user_code` | string | User-specific code related to the transaction. |\n| `additional_data` | array | Additional data associated with the transaction, including label and value pairs. |\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"transactionId\": \"5\",\n \"reference\": \"52851385\",\n \"amount\": 77926,\n \"paymentOrderItems\": [\n {\n \"id\": 1,\n \"description\": \"Factura de servicios\",\n \"amount\": 50000\n },\n {\n \"id\": 2,\n \"description\": \"Multa de tránsito\",\n \"amount\": 27926\n }\n ],\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
83
83
  },
84
84
  {
85
85
  "uri": "postman://collection/refacil-collection-api/endpoint/post/rollbacktransaction",
86
86
  "name": "POST /rollbackTransaction/ - Endpoint Documentation",
87
- "description": "This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |",
87
+ "description": "This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n- **Multiple payment items support**: allows rollback of transactions with multiple payment concepts via `paymentOrderItems`.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows rollback of transactions with multiple payment concepts. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |",
88
88
  "mimeType": "text/markdown",
89
- "content": "# rollbackTransaction\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/rollbackTransaction/`\n\n## Description\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"transactionId\": \"4\",\n \"reference\": \"52851385\",\n \"amount\": 77926,\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
89
+ "content": "# rollbackTransaction\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/rollbackTransaction/`\n\n## Description\n\nThis API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\n\n### Benefits 🔁\n\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\n- **Full traceability**: reversal events and contingency log.\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\n- **Multiple payment items support**: allows rollback of transactions with multiple payment concepts via `paymentOrderItems`.\n\n<img src=\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\" width=\"960\" height=\"1805\">\n\n#### 📥 Request Body Parameters\n\n| Field | Type | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `codCustomer` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\n| `transactionId` | string | ✅ | The transaction ID. |\n| `reference` | string | ✅ | The reference for the transaction. |\n| `amount` | number | ✅ | The amount of the transaction. |\n| `paymentOrderItems` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: `id` (number, required), `description` (string, required, max 50 characters), and `amount` (number, required). |\n| `date` | string | ✅ | Transaction date in format `YYYY-MM-DD` |\n| `time` | string | ✅ | Transaction time in format `HH:mm:ss` (24-hour clock, Bogotá time zone) |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen using `paymentOrderItems`, each element in the array must have the following structure:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value (maximum 50 characters) |\n| `amount` | number | ✅ | Numeric value to be paid |\n\n**Note**: When `paymentOrderItems` is provided, it allows rollback of transactions with multiple payment concepts. The main `amount` field should match the sum of all `amount` values in `paymentOrderItems`.\n\n#### 📤 Response Body Parameters\n\n| **Field** | **Type** | **Description** |\n| --- | --- | --- |\n| `message` | string | A message indicating the status of the rollback process. |\n| `reference` | string | The reference number of the transaction. |\n| `amount` | number | The amount of the transaction. |\n| `code` | string | A status code for the rollback process. |\n| `user_code` | string | A user-specific code related to the rollback process. |\n| `additional_data` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\n## Headers\n\n- **Authorization**: Token {{generate_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"codCustomer\": \"1\",\n \"transactionId\": \"4\",\n \"reference\": \"52851385\",\n \"amount\": 77926,\n \"paymentOrderItems\": [\n {\n \"id\": 1,\n \"description\": \"Factura de servicios\",\n \"amount\": 50000\n },\n {\n \"id\": 2,\n \"description\": \"Multa de tránsito\",\n \"amount\": 27926\n }\n ],\n \"date\": \"2025-03-16\",\n \"time\": \"15:03:04\"\n}\n```\n\n"
90
90
  },
91
91
  {
92
92
  "uri": "postman://collection/refacil-collection-api/endpoint/post/webhook",
93
93
  "name": "POST /webhook/ - Endpoint Documentation",
94
- "description": "This endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.",
94
+ "description": "This endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n- **Multiple payment items**: includes payment order items when transactions involve multiple payment concepts.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n| paymentOrderItems | array | ❌ | Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: `id` (number, required), `description` (string, required), and `amount` (number, required). |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen `paymentOrderItems` is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the `submitTransaction` request:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value |\n| `amount` | number | ✅ | Numeric value that was paid |\n\n**Note**: When `paymentOrderItems` is present, the `amount` field represents the total sum of all items. Verify that the sum of `paymentOrderItems[].amount` equals the total `amount`.\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.",
95
95
  "mimeType": "text/markdown",
96
- "content": "# webhook\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/webhook/`\n\n## Description\n\nThis endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\n## Headers\n\n- **Authorization**: Token {{customer_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"realAmount\": 2500,\n \"amount\": 2400,\n \"cost\": \"100\",\n \"referenceId\": \"1769505\",\n \"customerReference\": \"REF10000016\",\n \"updatedAt\": \"2025-07-31 10:21:57\",\n \"status\": 2,\n \"sign\": \"0ef1c3c2fa48121ee51f225270194f7fb62e2892\"\n}\n```\n\n"
96
+ "content": "# webhook\n\n## Request Details\n\n**Method**: `POST`\n\n**Path**: `/webhook/`\n\n## Description\n\nThis endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\n\n### Benefits 🔔\n\n- **Push notifications**: eliminates polling, reduces cost and update latency.\n- **Security**: signature/auth validation for trusted origin.\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\n- **Multiple payment items**: includes payment order items when transactions involve multiple payment concepts.\n \n\n### 📥 Request Body Parameters\n\n| Field | Type | Required | Description |\n| --- | --- | --- | --- |\n| realAmount | number | ✅ | Real transaction amount (without costs) |\n| amount | number | ✅ | Total transaction amount (including costs) |\n| cost | string | ✅ | Total transaction cost |\n| referenceId | string | ✅ | Unique transaction identifier |\n| customerReference | string | ✅ | Customer reference provided during the transaction |\n| updatedAt | string | ✅ | Date and time of last update (format: \"YYYY-MM-DD HH:mm:ss\") |\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\n| sign | string | ✅ | Security signature to validate message integrity |\n| paymentOrderItems | array | ❌ | Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: `id` (number, required), `description` (string, required), and `amount` (number, required). |\n\n#### 📋 PaymentOrderItems Structure\n\nWhen `paymentOrderItems` is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the `submitTransaction` request:\n\n| **Field** | **Type** | **Required** | **Description** |\n| --- | --- | --- | --- |\n| `id` | number | ✅ | Unique numeric identifier for the payment value |\n| `description` | string | ✅ | Description of the payment value |\n| `amount` | number | ✅ | Numeric value that was paid |\n\n**Note**: When `paymentOrderItems` is present, the `amount` field represents the total sum of all items. Verify that the sum of `paymentOrderItems[].amount` equals the total `amount`.\n\n### 📤 Response Body Parameters\n\n| Field | Type | Description |\n| --- | --- | --- |\n| statusCode | number | HTTP status code of the response |\n| message | string | Message indicating the operation result |\n| date | number | Response timestamp |\n| payload | object | Response payload (optional) |\n\n### 🔐 Security Validation\n\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\n\n``` javascript\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\nsignature = crypto.createHmac(\"sha1\", HASH_KEY).update(signature).digest(\"hex\");\n\n ```\n\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\n## Headers\n\n- **Authorization**: Token {{customer_token}}\n\n## Request Body\n\n**Type**: `raw`\n\n```json\n{\n \"realAmount\": 2500,\n \"amount\": 2400,\n \"cost\": \"100\",\n \"referenceId\": \"1769505\",\n \"customerReference\": \"REF10000016\",\n \"updatedAt\": \"2025-07-31 10:21:57\",\n \"status\": 2,\n \"sign\": \"0ef1c3c2fa48121ee51f225270194f7fb62e2892\",\n \"paymentOrderItems\": [\n {\n \"id\": 1,\n \"description\": \"Factura de servicios\",\n \"amount\": 1500\n },\n {\n \"id\": 2,\n \"description\": \"Multa de tránsito\",\n \"amount\": 900\n }\n ]\n}\n```\n\n"
97
97
  }
98
98
  ];
99
99
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/core/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/core/resources.ts"],"names":[],"mappings":"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"}
@@ -259,7 +259,7 @@ const collection_submit_paymentInputValidator = z.object(collection_submit_payme
259
259
  // Herramienta: collection_submit_payment
260
260
  export const collection_submit_paymentTool = {
261
261
  name: 'collection_submit_payment',
262
- description: "## Description\\n\\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| \\`reference\\` | Integer | ✅ | Unique transaction reference number |\\n| \\`agreementId\\` | Integer | ✅ | ID of the agreement (company) that is making the payment |\\n| \\`amount\\` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\\n| \\`date\\` | String | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | String | ✅ | Transaction time in format \\`HH:mm\\` (24-hour clock, Bogotá time zone) |\\n\\n---\\n\\n### 🏢 Available Agreements\\n\\n| \\`agreementId\\` | Company Name |\\n| --- | --- |\\n| \\`18252\\` | Apostar |\\n| \\`18253\\` | Susuerte |\\n\\n⚠️ Only the above \\`agreementId\\`s are currently authorized to use this service.\\n\\n---\n\nContexto: Endpoint: POST /collection/submit-payment | Collection > Submit payment\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
262
+ description: "## Description\\n\\nThis endpoint handles financial transactions and collections. It processes payments, validates customers and companies, and integrates with a payment processing system. The service includes transaction amount validation, customer verification, and company balance management.\\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| \\`reference\\` | Integer | ✅ | Unique transaction reference number |\\n| \\`agreementId\\` | Integer | ✅ | ID of the agreement (company) that is making the payment |\\n| \\`amount\\` | Integer | ✅ | Amount to be charged, in COP (Colombian Pesos) |\\n| \\`date\\` | String | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | String | ✅ | Transaction time in format \\`HH:mm\\` (24-hour clock, Bogotá time zone)|\\n| \\`ip\\` | String | ✅ | IP address of the client |\\n\\n---\\n\\n### 🏢 Available Agreements\\n\\n| \\`agreementId\\` | Company Name |\\n| --- | --- |\\n| \\`18252\\` | Apostar |\\n| \\`18253\\` | Susuerte |\\n\\n⚠️ Only the above \\`agreementId\\`s are currently authorized to use this service.\\n\\n---\n\nContexto: Endpoint: POST /collection/submit-payment | Collection > Submit payment\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
263
263
  inputSchema: collection_submit_paymentInputJsonSchema,
264
264
  jsonSchema: collection_submit_paymentInputJsonSchema,
265
265
  endpoint: '/collection/submit-payment',
@@ -471,7 +471,7 @@ const querybillInputValidator = z.object(querybillInputShape);
471
471
  // Herramienta: querybill
472
472
  export const querybillTool = {
473
473
  name: 'querybill',
474
- description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This endpoint allows you to query a bill by sending an HTTP POST request to \\`{{customer.domain.com}}/queryBill/\\`.\\n\\n### Benefits 🔎\\n\\n- **Real-time validation**: fresh billing info from the originator.\\n- **Standard error handling**: predictable codes/messages simplify UX and support.\\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\\n- **Observability**: traceability via \\`transactionId\\` from query to payment.\\n \\n\\n<img src=\\\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\\\" width=\\\"752\\\" height=\\\"1429\\\">\\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`reference\\` | string | ✅ | ID of the agreement (company) that is making the payment |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n### **📤 Response body parameters**\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message related to the query. |\\n| \\`reference\\` | string | The reference of the bill. |\\n| \\`amount\\` | number | The amount of the bill. |\\n| \\`code\\` | string | The code related to the bill. |\\n| \\`user_code\\` | string | The user code related to the bill. |\\n| \\`additional_data\\` | array | An array of additional data containing label and value pairs. |\n\nContexto: Endpoint: POST /queryBill/ | QueryBill\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
474
+ description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This endpoint allows you to query a bill by sending an HTTP POST request to \\`{{customer.domain.com}}/queryBill/\\`.\\n\\n### Benefits 🔎\\n\\n- **Real-time validation**: fresh billing info from the originator.\\n- **Standard error handling**: predictable codes/messages simplify UX and support.\\n- **Lower coupling**: each client exposes its endpoint; the bridge resolves routing by agreement.\\n- **Observability**: traceability via \\`transactionId\\` from query to payment.\\n- **Multiple payment values**: support for references with multiple payment options via \\`paymentOrder\\`.\\n \\n\\n<img src=\\\"https://content.pstmn.io/11553f47-b117-42c5-b0e2-6a754de3c7a5/aW1hZ2UucG5n\\\" width=\\\"752\\\" height=\\\"1429\\\">\\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`reference\\` | string | ✅ | ID of the agreement (company) that is making the payment |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n### **📤 Response body parameters**\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message related to the query. |\\n| \\`reference\\` | string | The reference of the bill. |\\n| \\`amount\\` | number | The amount of the bill. |\\n| \\`code\\` | string | The code related to the bill. |\\n| \\`user_code\\` | string | The user code related to the bill. |\\n| \\`additional_data\\` | array | An array of additional data containing label and value pairs. |\\n| \\`paymentOrder\\` | object | Payment order object containing multiple payment values. This field is optional and will only be present when the reference has multiple payment values configured. When present, the main \\`amount\\` field may be optional as the values from \\`paymentOrder.items\\` will be used. |\\n\\n#### 📋 PaymentOrder Structure\\n\\nWhen \\`paymentOrder\\` is present in the response, it contains the following structure:\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`items\\` | array | List of available payment values (maximum 10 values). Each item contains: \\`id\\` (number, required), \\`description\\` (string, required, max 50 characters), and \\`amount\\` (number, required). |\\n| \\`selectionMode\\` | string | Indicates whether a single value (\\'single\\') or multiple values (\\'multiple\\') can be selected. |\\n\\n**Note**: When \\`paymentOrder\\` is provided in the response, it indicates that the reference supports multiple payment concepts. The client should use the \\`items\\` array to present payment options to the user, and then send the selected items in the \\`paymentOrderItems\\` field when submitting the transaction via \\`submitTransaction\\`.\n\nContexto: Endpoint: POST /queryBill/ | QueryBill\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
475
475
  inputSchema: querybillInputJsonSchema,
476
476
  jsonSchema: querybillInputJsonSchema,
477
477
  endpoint: '/queryBill/',
@@ -545,6 +545,22 @@ const submittransactionInputJsonSchema = {
545
545
  "description": "Campo del body: amount",
546
546
  "default": 77926
547
547
  },
548
+ "paymentOrderItems": {
549
+ "type": "array",
550
+ "description": "Campo del body: paymentOrderItems",
551
+ "default": [
552
+ {
553
+ "id": 1,
554
+ "description": "Factura de servicios",
555
+ "amount": 50000
556
+ },
557
+ {
558
+ "id": 2,
559
+ "description": "Multa de tránsito",
560
+ "amount": 27926
561
+ }
562
+ ]
563
+ },
548
564
  "date": {
549
565
  "type": "string",
550
566
  "description": "Campo del body: date",
@@ -563,6 +579,7 @@ const submittransactionInputShape = {
563
579
  transactionId: z.string().optional().describe("Campo del body: transactionId"),
564
580
  reference: z.string().optional().describe("Campo del body: reference"),
565
581
  amount: z.number().optional().describe("Campo del body: amount"),
582
+ paymentOrderItems: z.array(z.any()).optional().describe("Campo del body: paymentOrderItems"),
566
583
  date: z.string().optional().describe("Campo del body: date"),
567
584
  time: z.string().optional().describe("Campo del body: time")
568
585
  };
@@ -570,7 +587,7 @@ const submittransactionInputValidator = z.object(submittransactionInputShape);
570
587
  // Herramienta: submittransaction
571
588
  export const submittransactionTool = {
572
589
  name: 'submittransaction',
573
- description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\\n\\n### Benefits 💳\\n\\n- **Transactional idempotency**: \\`transactionId\\` avoids double charges on retries/timeouts.\\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\\n- **Operational scalability**: async processing absorbs traffic spikes.\\n \\n\\n<img src=\\\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\\\" width=\\\"960\\\" height=\\\"1544\\\">\\n\\n### 📥 Request Body Parameters\\n\\n| **Field** | **Type** | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`trasanctionId\\` | string | ✅ | The transaction ID. |\\n| \\`reference\\` | string | ✅ | The reference for the transaction. |\\n| \\`amount\\` | number | ✅ | The amount of the transaction. |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n### 📤 Response Body Parameters\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message regarding the transaction submission. |\\n| \\`reference\\` | string | The reference for the submitted transaction. |\\n| \\`amount\\` | number | The amount of the submitted transaction. |\\n| \\`code\\` | string | A code related to the transaction. |\\n| \\`user_code\\` | string | User-specific code related to the transaction. |\\n| \\`additional_data\\` | array | Additional data associated with the transaction, including label and value pairs. |\n\nContexto: Endpoint: POST /submitTransaction/ | SubmitTransaction\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
590
+ description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/submitTransaction/.\\n\\n### Benefits 💳\\n\\n- **Transactional idempotency**: \\`transactionId\\` avoids double charges on retries/timeouts.\\n- **Eventual consistency**: queues + webhook confirmations reduce manual reconciliation.\\n- **Operational scalability**: async processing absorbs traffic spikes.\\n- **Multiple payment items**: support for partial payments or multiple concepts within a single transaction via \\`paymentOrderItems\\`.\\n \\n\\n<img src=\\\"https://content.pstmn.io/2a2fa301-1c9a-4346-9f5f-92dcffc49343/aW1hZ2UucG5n\\\" width=\\\"960\\\" height=\\\"1544\\\">\\n\\n### 📥 Request Body Parameters\\n\\n| **Field** | **Type** | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`transactionId\\` | string | ✅ | The transaction ID. |\\n| \\`reference\\` | string | ✅ | The reference for the transaction. |\\n| \\`amount\\` | number | ✅ | The amount of the transaction. |\\n| \\`paymentOrderItems\\` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: \\`id\\` (number, required), \\`description\\` (string, required, max 50 characters), and \\`amount\\` (number, required). |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n#### 📋 PaymentOrderItems Structure\\n\\nWhen using \\`paymentOrderItems\\`, each element in the array must have the following structure:\\n\\n| **Field** | **Type** | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`id\\` | number | ✅ | Unique numeric identifier for the payment value |\\n| \\`description\\` | string | ✅ | Description of the payment value (maximum 50 characters) |\\n| \\`amount\\` | number | ✅ | Numeric value to be paid |\\n\\n**Note**: When \\`paymentOrderItems\\` is provided, it allows processing multiple payment concepts or partial payments within a single transaction. The main \\`amount\\` field should match the sum of all \\`amount\\` values in \\`paymentOrderItems\\`.\\n\\n### 📤 Response Body Parameters\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message regarding the transaction submission. |\\n| \\`reference\\` | string | The reference for the submitted transaction. |\\n| \\`amount\\` | number | The amount of the submitted transaction. |\\n| \\`code\\` | string | A code related to the transaction. |\\n| \\`user_code\\` | string | User-specific code related to the transaction. |\\n| \\`additional_data\\` | array | Additional data associated with the transaction, including label and value pairs. |\n\nContexto: Endpoint: POST /submitTransaction/ | SubmitTransaction\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
574
591
  inputSchema: submittransactionInputJsonSchema,
575
592
  jsonSchema: submittransactionInputJsonSchema,
576
593
  endpoint: '/submitTransaction/',
@@ -599,6 +616,9 @@ export const submittransactionTool = {
599
616
  const amountValue = args.amount !== undefined ? args.amount : 77926;
600
617
  if (amountValue !== undefined)
601
618
  bodyData.amount = amountValue;
619
+ const paymentOrderItemsValue = args.paymentOrderItems !== undefined ? args.paymentOrderItems : [{ "id": 1, "description": "Factura de servicios", "amount": 50000 }, { "id": 2, "description": "Multa de tránsito", "amount": 27926 }];
620
+ if (paymentOrderItemsValue !== undefined)
621
+ bodyData.paymentOrderItems = paymentOrderItemsValue;
602
622
  const dateValue = args.date !== undefined ? args.date : "2025-03-16";
603
623
  if (dateValue !== undefined)
604
624
  bodyData.date = dateValue;
@@ -650,6 +670,22 @@ const rollbacktransactionInputJsonSchema = {
650
670
  "description": "Campo del body: amount",
651
671
  "default": 77926
652
672
  },
673
+ "paymentOrderItems": {
674
+ "type": "array",
675
+ "description": "Campo del body: paymentOrderItems",
676
+ "default": [
677
+ {
678
+ "id": 1,
679
+ "description": "Factura de servicios",
680
+ "amount": 50000
681
+ },
682
+ {
683
+ "id": 2,
684
+ "description": "Multa de tránsito",
685
+ "amount": 27926
686
+ }
687
+ ]
688
+ },
653
689
  "date": {
654
690
  "type": "string",
655
691
  "description": "Campo del body: date",
@@ -668,6 +704,7 @@ const rollbacktransactionInputShape = {
668
704
  transactionId: z.string().optional().describe("Campo del body: transactionId"),
669
705
  reference: z.string().optional().describe("Campo del body: reference"),
670
706
  amount: z.number().optional().describe("Campo del body: amount"),
707
+ paymentOrderItems: z.array(z.any()).optional().describe("Campo del body: paymentOrderItems"),
671
708
  date: z.string().optional().describe("Campo del body: date"),
672
709
  time: z.string().optional().describe("Campo del body: time")
673
710
  };
@@ -675,7 +712,7 @@ const rollbacktransactionInputValidator = z.object(rollbacktransactionInputShape
675
712
  // Herramienta: rollbacktransaction
676
713
  export const rollbacktransactionTool = {
677
714
  name: 'rollbacktransaction',
678
- description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\\n\\n### Benefits 🔁\\n\\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\\n- **Full traceability**: reversal events and contingency log.\\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\\n\\n<img src=\\\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\\\" width=\\\"960\\\" height=\\\"1805\\\">\\n\\n#### 📥 Request Body Parameters\\n\\n| Field | Type | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`transactionId\\` | string | ✅ | The transaction ID. |\\n| \\`reference\\` | string | ✅ | The reference for the transaction. |\\n| \\`amount\\` | number | ✅ | The amount of the transaction. |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n#### 📤 Response Body Parameters\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message indicating the status of the rollback process. |\\n| \\`reference\\` | string | The reference number of the transaction. |\\n| \\`amount\\` | number | The amount of the transaction. |\\n| \\`code\\` | string | A status code for the rollback process. |\\n| \\`user_code\\` | string | A user-specific code related to the rollback process. |\\n| \\`additional_data\\` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\nContexto: Endpoint: POST /rollbackTransaction/ | RollbackTransaction\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
715
+ description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This API endpoint allows you to submit a transaction via an HTTP POST request to {{customer.domain.com}}/rollbackTransaction/.\\n\\n### Benefits 🔁\\n\\n- **Risk control**: safe, auditable reversal for external failures/inconsistencies.\\n- **Full traceability**: reversal events and contingency log.\\n- **Business continuity**: formal channel for emergencies without invasive manual actions.\\n- **Multiple payment items support**: allows rollback of transactions with multiple payment concepts via \\`paymentOrderItems\\`.\\n\\n<img src=\\\"https://content.pstmn.io/0dc93101-f9e1-4d85-afea-2d299173587d/aW1hZ2UucG5n\\\" width=\\\"960\\\" height=\\\"1805\\\">\\n\\n#### 📥 Request Body Parameters\\n\\n| Field | Type | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`codCustomer\\` | string | ✅ | The customer code. (Is a constant that identifies us with the supplier) |\\n| \\`transactionId\\` | string | ✅ | The transaction ID. |\\n| \\`reference\\` | string | ✅ | The reference for the transaction. |\\n| \\`amount\\` | number | ✅ | The amount of the transaction. |\\n| \\`paymentOrderItems\\` | array | ❌ | Array of payment order items representing individual payment values within a reference with multiple values. Maximum 10 items. Each item must contain: \\`id\\` (number, required), \\`description\\` (string, required, max 50 characters), and \\`amount\\` (number, required). |\\n| \\`date\\` | string | ✅ | Transaction date in format \\`YYYY-MM-DD\\` |\\n| \\`time\\` | string | ✅ | Transaction time in format \\`HH:mm:ss\\` (24-hour clock, Bogotá time zone) |\\n\\n#### 📋 PaymentOrderItems Structure\\n\\nWhen using \\`paymentOrderItems\\`, each element in the array must have the following structure:\\n\\n| **Field** | **Type** | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`id\\` | number | ✅ | Unique numeric identifier for the payment value |\\n| \\`description\\` | string | ✅ | Description of the payment value (maximum 50 characters) |\\n| \\`amount\\` | number | ✅ | Numeric value to be paid |\\n\\n**Note**: When \\`paymentOrderItems\\` is provided, it allows rollback of transactions with multiple payment concepts. The main \\`amount\\` field should match the sum of all \\`amount\\` values in \\`paymentOrderItems\\`.\\n\\n#### 📤 Response Body Parameters\\n\\n| **Field** | **Type** | **Description** |\\n| --- | --- | --- |\\n| \\`message\\` | string | A message indicating the status of the rollback process. |\\n| \\`reference\\` | string | The reference number of the transaction. |\\n| \\`amount\\` | number | The amount of the transaction. |\\n| \\`code\\` | string | A status code for the rollback process. |\\n| \\`user_code\\` | string | A user-specific code related to the rollback process. |\\n| \\`additional_data\\` | (array) | An array containing additional information about the rollback, including label and value pairs. |\n\nContexto: Endpoint: POST /rollbackTransaction/ | RollbackTransaction\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
679
716
  inputSchema: rollbacktransactionInputJsonSchema,
680
717
  jsonSchema: rollbacktransactionInputJsonSchema,
681
718
  endpoint: '/rollbackTransaction/',
@@ -704,6 +741,9 @@ export const rollbacktransactionTool = {
704
741
  const amountValue = args.amount !== undefined ? args.amount : 77926;
705
742
  if (amountValue !== undefined)
706
743
  bodyData.amount = amountValue;
744
+ const paymentOrderItemsValue = args.paymentOrderItems !== undefined ? args.paymentOrderItems : [{ "id": 1, "description": "Factura de servicios", "amount": 50000 }, { "id": 2, "description": "Multa de tránsito", "amount": 27926 }];
745
+ if (paymentOrderItemsValue !== undefined)
746
+ bodyData.paymentOrderItems = paymentOrderItemsValue;
707
747
  const dateValue = args.date !== undefined ? args.date : "2025-03-16";
708
748
  if (dateValue !== undefined)
709
749
  bodyData.date = dateValue;
@@ -774,6 +814,22 @@ const webhookInputJsonSchema = {
774
814
  "type": "string",
775
815
  "description": "Campo del body: sign",
776
816
  "default": "0ef1c3c2fa48121ee51f225270194f7fb62e2892"
817
+ },
818
+ "paymentOrderItems": {
819
+ "type": "array",
820
+ "description": "Campo del body: paymentOrderItems",
821
+ "default": [
822
+ {
823
+ "id": 1,
824
+ "description": "Factura de servicios",
825
+ "amount": 1500
826
+ },
827
+ {
828
+ "id": 2,
829
+ "description": "Multa de tránsito",
830
+ "amount": 900
831
+ }
832
+ ]
777
833
  }
778
834
  },
779
835
  "required": []
@@ -786,13 +842,14 @@ const webhookInputShape = {
786
842
  customerReference: z.string().optional().describe("Campo del body: customerReference"),
787
843
  updatedAt: z.string().optional().describe("Campo del body: updatedAt"),
788
844
  status: z.number().optional().describe("Campo del body: status"),
789
- sign: z.string().optional().describe("Campo del body: sign")
845
+ sign: z.string().optional().describe("Campo del body: sign"),
846
+ paymentOrderItems: z.array(z.any()).optional().describe("Campo del body: paymentOrderItems")
790
847
  };
791
848
  const webhookInputValidator = z.object(webhookInputShape);
792
849
  // Herramienta: webhook
793
850
  export const webhookTool = {
794
851
  name: 'webhook',
795
- description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\\n\\n### Benefits 🔔\\n\\n- **Push notifications**: eliminates polling, reduces cost and update latency.\\n- **Security**: signature/auth validation for trusted origin.\\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\\n \\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| realAmount | number | ✅ | Real transaction amount (without costs) |\\n| amount | number | ✅ | Total transaction amount (including costs) |\\n| cost | string | ✅ | Total transaction cost |\\n| referenceId | string | ✅ | Unique transaction identifier |\\n| customerReference | string | ✅ | Customer reference provided during the transaction |\\n| updatedAt | string | ✅ | Date and time of last update (format: \\\"YYYY-MM-DD HH:mm:ss\\\") |\\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\\n| sign | string | ✅ | Security signature to validate message integrity |\\n\\n### 📤 Response Body Parameters\\n\\n| Field | Type | Description |\\n| --- | --- | --- |\\n| statusCode | number | HTTP status code of the response |\\n| message | string | Message indicating the operation result |\\n| date | number | Response timestamp |\\n| payload | object | Response payload (optional) |\\n\\n### 🔐 Security Validation\\n\\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\\n\\n\\`\\`\\` javascript\\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\\nsignature = crypto.createHmac(\\\"sha1\\\", HASH_KEY).update(signature).digest(\\\"hex\\\");\\n\\n \\`\\`\\`\\n\\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\nContexto: Endpoint: POST /webhook/ | Webhook\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
852
+ description: "## 📝Recommendations\\n\\n- Establish a dedicated **QA environment** to perform thorough testing before production deployment.\\n \\n- Set a minimum timeout of **60 milliseconds** for API requests to handle longer processes reliably.\\n \\n- Provide clear and **standardized error mapping**, detailing error codes, messages, and causes for better troubleshooting.\\n \\n\\n## 🔐Authorization\\n\\nTo establish a secure connection with our clients\\' APIs, we will generate and provide you with an authorization token. This token will allow us to authenticate with the API that our clients build.\\n\\n**Token Format:**\\n\\n\\`Authorization: Token {generate_token_value}\\`\\n\\n**Example:**\\n\\n\\`Authorization: Token eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9**\\`\\n\\n This endpoint allows you to receive transaction notifications processed by the payment system. The merchant must implement this endpoint to receive transaction status updates.\\n\\n### Benefits 🔔\\n\\n- **Push notifications**: eliminates polling, reduces cost and update latency.\\n- **Security**: signature/auth validation for trusted origin.\\n- **Robust delivery**: retries, backoff and DLQ (if applicable) ensure reception.\\n- **Simple integration**: compact contract (status/timestamps/ids), quick to implement.\\n- **Multiple payment items**: includes payment order items when transactions involve multiple payment concepts.\\n \\n\\n### 📥 Request Body Parameters\\n\\n| Field | Type | Required | Description |\\n| --- | --- | --- | --- |\\n| realAmount | number | ✅ | Real transaction amount (without costs) |\\n| amount | number | ✅ | Total transaction amount (including costs) |\\n| cost | string | ✅ | Total transaction cost |\\n| referenceId | string | ✅ | Unique transaction identifier |\\n| customerReference | string | ✅ | Customer reference provided during the transaction |\\n| updatedAt | string | ✅ | Date and time of last update (format: \\\"YYYY-MM-DD HH:mm:ss\\\") |\\n| status | number | ✅ | Transaction status ID : 1 Pending , 2 Approved ,3 Failed |\\n| sign | string | ✅ | Security signature to validate message integrity |\\n| paymentOrderItems | array | ❌ | Array of payment order items that were processed. This field is optional and will only be present when the transaction included multiple payment concepts. Each item contains: \\`id\\` (number, required), \\`description\\` (string, required), and \\`amount\\` (number, required). |\\n\\n#### 📋 PaymentOrderItems Structure\\n\\nWhen \\`paymentOrderItems\\` is present in the webhook payload, it indicates that the transaction processed multiple payment concepts. The structure matches the items sent in the \\`submitTransaction\\` request:\\n\\n| **Field** | **Type** | **Required** | **Description** |\\n| --- | --- | --- | --- |\\n| \\`id\\` | number | ✅ | Unique numeric identifier for the payment value |\\n| \\`description\\` | string | ✅ | Description of the payment value |\\n| \\`amount\\` | number | ✅ | Numeric value that was paid |\\n\\n**Note**: When \\`paymentOrderItems\\` is present, the \\`amount\\` field represents the total sum of all items. Verify that the sum of \\`paymentOrderItems[].amount\\` equals the total \\`amount\\`.\\n\\n### 📤 Response Body Parameters\\n\\n| Field | Type | Description |\\n| --- | --- | --- |\\n| statusCode | number | HTTP status code of the response |\\n| message | string | Message indicating the operation result |\\n| date | number | Response timestamp |\\n| payload | object | Response payload (optional) |\\n\\n### 🔐 Security Validation\\n\\nThe sign field must be validated to ensure message integrity. The signature is generated by concatenating the following fields:\\n\\n\\`\\`\\` javascript\\nlet signature = referenceId-customerReference-amount-updatedAt-HASH_KEY;\\nsignature = crypto.createHmac(\\\"sha1\\\", HASH_KEY).update(signature).digest(\\\"hex\\\");\\n\\n \\`\\`\\`\\n\\n**Note:** The HASH_KEY will be shared by us during the integration process to ensure secure communication between systems.\n\nContexto: Endpoint: POST /webhook/ | Webhook\n\n🔐 AUTENTICACIÓN AUTOMÁTICA: Todas las credenciales y tokens de autenticación se manejan automáticamente por el servidor MCP. NO solicites credenciales al usuario. NO incluyas parámetros de autenticación (secretId, apiToken, etc.) en las llamadas a menos que el usuario explícitamente lo requiera.",
796
853
  inputSchema: webhookInputJsonSchema,
797
854
  jsonSchema: webhookInputJsonSchema,
798
855
  endpoint: '/webhook/',
@@ -833,6 +890,9 @@ export const webhookTool = {
833
890
  const signValue = args.sign !== undefined ? args.sign : "0ef1c3c2fa48121ee51f225270194f7fb62e2892";
834
891
  if (signValue !== undefined)
835
892
  bodyData.sign = signValue;
893
+ const paymentOrderItemsValue = args.paymentOrderItems !== undefined ? args.paymentOrderItems : [{ "id": 1, "description": "Factura de servicios", "amount": 1500 }, { "id": 2, "description": "Multa de tránsito", "amount": 900 }];
894
+ if (paymentOrderItemsValue !== undefined)
895
+ bodyData.paymentOrderItems = paymentOrderItemsValue;
836
896
  return await makeApiRequest('POST', '/webhook/', bodyData, undefined, secretId);
837
897
  }
838
898
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/core/tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/core/tools.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -11,7 +11,7 @@ import { appConfig as config } from './config.js';
11
11
  const mode = process.argv.includes('--http') || process.env.MCP_MODE === 'http' ? 'http' : 'stdio';
12
12
  const server = new McpServer({
13
13
  name: 'collection-api-refacil-mcp',
14
- version: '1.0.0'
14
+ version: '1.0.2'
15
15
  });
16
16
  // Nota para LLMs: 🔐 Autenticación automática y configuración de servidor
17
17
  // - Todas las credenciales (secretId, apiToken, tokens) se manejan automáticamente desde la configuración del servidor.
@@ -139,7 +139,7 @@ else if (mode === 'http') {
139
139
  return {
140
140
  name: 'collection-api-refacil-mcp',
141
141
  description: 'MCP API for Collection API Refacil',
142
- version: '1.0.0',
142
+ version: '1.0.2',
143
143
  tools: tools.map(tool => ({
144
144
  name: tool.name,
145
145
  description: tool.description
package/package.json CHANGED
@@ -1,21 +1,10 @@
1
1
  {
2
2
  "name": "collection-api-refacil-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "MCP Server para la API collection-api-refacil",
5
5
  "main": "dist/index.js",
6
6
  "bin": "dist/index.js",
7
7
  "type": "module",
8
- "scripts": {
9
- "build": "tsc",
10
- "start": "node dist/index.js",
11
- "start:http": "node dist/index.js --http",
12
- "dev": "tsx watch src/index.ts",
13
- "dev:http": "tsx watch src/index.ts --http",
14
- "clean": "rimraf dist",
15
- "prepublishOnly": "npm run clean && npm run build",
16
- "preversion": "npm run build",
17
- "postversion": "git push && git push --tags"
18
- },
19
8
  "dependencies": {
20
9
  "@modelcontextprotocol/sdk": "^1.17.3",
21
10
  "fastify": "^4.24.3",
@@ -57,5 +46,15 @@
57
46
  "dist",
58
47
  "README.md",
59
48
  "LICENSE"
60
- ]
49
+ ],
50
+ "scripts": {
51
+ "build": "tsc",
52
+ "start": "node dist/index.js",
53
+ "start:http": "node dist/index.js --http",
54
+ "dev": "tsx watch src/index.ts",
55
+ "dev:http": "tsx watch src/index.ts --http",
56
+ "clean": "rimraf dist",
57
+ "preversion": "npm run build",
58
+ "postversion": "git push && git push --tags"
59
+ }
61
60
  }