The Spanish version is the authoritative reference. View in Spanish
El Salvador: Document Reception (MS)
1. JSON RECEPTION PROCESS
This process allows different types of documents to be received from customers and suppliers through the channels offered by Gosocket. Once received, both the issuer and the recipient can view the documents in Inbox's Received tray, along with their respective graphic representation and attachments.
Likewise, our system performs a series of automatic validations to ensure that the structure and integrity of the information strictly comply with the requirements of the tax authorities.
The following image describes, step by step, the document reception flow within the Inbox platform:

El Salvador reception flow
1. JSON document submission methods in Gosocket:
The supplier can send the JSON document to the Gosocket platform in three ways:
a. The supplier manually uploads the JSON file using Gosocket's Upload option. The requirements and conditions for this process are detailed in the Manual upload. section
b. The supplier sends the JSON document through Gosocket's exchange mailbox. The requirements and conditions for this process are detailed in the Exchange mailbox. section
c. The supplier uploads the JSON document through Gosocket's Reception API. The requirements and conditions for this process are detailed in the Reception APIs. section
Note: When using any of the following document reception channels:
- Exchange mailbox
- Manual JSON upload (Upload option)
- Reception API
The system will automatically run the schema, signature, and corresponding validation with the Tax Authority (TA) checks.
2. Document reception and validation in Gosocket
The Gosocket portal downloads and processes the JSON. When it is a tax document, it enters a reception validation process.
3. Document schema validation
First, a schema validation is performed on the JSON document to ensure it complies with the format established by the tax authority. Depending on the result of this validation, the process can lead to one of the following scenarios:
d. Failed: The document does not comply with the fiscal format, the document's reception flow will be stopped due to the schema error, it will be registered in Gosocket with Schema Error status, and the interface will display the icon
and the reason for rejection will be detailed in the document's notes, as follows:

Schema error icon in inbox

Document detail Notes section - Schema Error

Detail of JSON processing for the schema error
e. Successful: If the JSON schema validation is correct, the document will continue with the reception flow.

Document detail Notes section - Successful schema validation
Special configuration: The JSON has a schema error, but if this configuration is enabled, this option allows the reception flow to continue:
This feature can be enabled independently for each company. Its purpose is that, if a schema error is detected in the JSON when the document is received in Gosocket, the specific error detail will be automatically recorded in the document's "Notes" section.
Despite this finding, the document will continue with its normal flow toward the following reception validations, such as signature and tax authority verification.
The document will remain in Inbox as follows:
- In Gosocket, the document will remain in Validated ET with schema error status and the orange icon
will be displayed, as follows:

For more details on how to configure this feature, see the following section: XML Configuration Presents Schema Errors and Reception Flow Continues
4. Document validation with the Tax Authority
Second, the query validation with the Tax Authority is performed. Several results can be obtained from this validation:
f. Document has an internal exception by Gosocket ❗
When performing the document's query validation with the Tax Authority and Gosocket cannot connect to the TA service or there are communication errors with the service, the document's status changes to ERROR and it is assigned the icon ❗.

Error icon in inbox: No communication with the TA.

Document detail Notes section - Document validation with the TA with communication error.
g. At this point in the process, when the document does exist in the tax authority , two responses can result:
- If the document exists, but it has a Rejected status
(For more detail, see item j) - If the document exists, but it has an Accepted status
(For more detail, see item k)
h. Document Rejected by the Tax Authority ![]()
If the document exists in the TA, but there is some reason for rejection at the Tax Authority, its status will be Rejected and it will be assigned the icon
.

Rejected icon in inbox: Document validation with the TA rejected

Document detail Notes section - Document validation with the TA rejected
i. Document Accepted by the Tax Authority ![]()
If the result of the previous validations (Schema and Signature) is satisfactory and the query with the tax authority is successful, the document will be registered in Gosocket with Accepted status. In the interface, this status is identified with a green checkmark icon
.
Accepted icon in inbox: Successful document validation with the TA

Document detail Notes section - Successful document validation with the TA
j. Automatic retries when the document has the Not Available in ET status
.
At this stage of the process, when the document does not exist in the Tax Authority, this indicates that the received document is not registered in the TA. In this scenario, the following actions are performed on the document:
-
In Gosocket, the document will remain in Not Available in ET status and will be assigned the corresponding icon
. -
An automatic retry process will be triggered, which consists of performing multiple queries to the Tax Authority to check whether the document changes to a status other than Not Available in ET. If a different status is obtained during any of these retries, the document will automatically update both its status and its corresponding icon.
-
If, after completing all the retries, the document is still not available in the Tax Authority, it will keep the Not Available in ET status and the corresponding icon
. -
The current retry parameter is 30 attempts in 1 hour (the query is retried every 2 minutes).
When the document is received and the query retries with the TA are performed, the following message is shown in the Notes section:

and within the document detail, the “TAX-CHECK” code will indicate that the validation with the TA has started:
Once the automatic retries are exhausted (approximately one hour later), the final status of the document with the TA will be displayed, as follows:

and the document detail will show the message:
“Integrated Query with the TA: Does not exist. 30 attempts were made. Manual reprocessing was performed.”
and another message will be shown on the other line: “The maximum number of retries for the status query with the TA was reached”, as follows:

and after these retries, two responses can result:
k. If after the 30 attempts the document is still not found, it will remain permanently in Not Available in ET status, showing the following icon
in the Inbox.

Rejected icon in inbox: Document validation with the TA
L. If during these retries the document is found in the TA, its status is updated, the process continues, and two responses can result:
- If the document exists, but it has a Rejected status
(For more detail, see item h) - If the document exists, but it has an Accepted status
(For more detail, see item i)
5. Icons in inbox for the reception validation results
Finally, both the issuer and the recipient will be able to view the results of the JSON document validations in Inbox, as follows:
| No. | Status | Icon in the inbox interface |
|---|---|---|
| m | Document has a schema error | ![]() |
| n | Document has a signature error | ![]() |
| o | Communication error with the Tax Authority | ![]() |
| p | Document was Accepted by the Tax Authority | |
| q | Document was Rejected by the Tax Authority | ![]() |
| r | Document not available or does not exist in the Tax Authority | ![]() |
2. MANUAL DOCUMENT REPROCESSING
Additionally, a button was implemented in Inbox that allows manually reprocessing tax documents with “ERROR” status ❗ or “Not Available in ET” status
or Schema Error status
.
Note: This option only allows reprocessing documents that have been sent through the exchange mailbox, the Reception API, or manual upload (upload).
This reprocessing option can be found in the following path, as applicable:
- Inbox/Received/Options/Actions/Reprocess document without validating schema.
- Inbox/Received/Options/Actions/Reprocess document.

Accompanied by a selector that, as its name indicates, will allow selecting an Electronic Document or a group of them independently.

Next, a pop-up window will be displayed in which the user must confirm that they want to revalidate the previously selected documents.
Once the reprocessing has been generated, a banner will be displayed at the top of the page indicating that the document(s) were sent for reprocessing:

and finally, for either of the two reprocessing options generated through this feature, the notes section will indicate:
- Records the email of the user who performed the document reprocessing.
- Generates a note “Document processed without schema validation”
- The document continues the reception validation flow.

This button allows reprocessing the different validations of the reception process:
2.1. Reprocess document without validating schema:
Allows the document to go through the reception validations without taking the schema validation into account; however, when selecting the document and applying this reprocessing without schema validation, the system:
- Records the email of the user who performed the document reprocessing.
- Generates a note “Document processed without schema validation”.
- The document continues the reception validation flow.

2.3. Reprocess document:
Allows the document to be reprocessed from scratch and performs the reception validations again without skipping any validation; however, when selecting the document and applying this reprocessing, the system:
- Records the email of the user who performed the document reprocessing.
- Performs the reception validations without skipping any of them.

3. JSON SUBMISSION METHODS
Currently, there are three methods for receiving documents into the system:
- Manual upload: Import of the JSON file using the Upload option in Gosocket.
- Exchange mailbox: Automated inbound flow through the exchange mailbox.
- Reception API: Connection via API for integrated processing.
Enveloped documents:
Documents that arrive enveloped (that is, more than two documents in the same package) include the original document along with its respective signature. However, the "Certificate" node is declared only once for all the documents contained in the envelope.
Subsequently, the Gosocket platform performs an internal process: when the system separates the enveloped documents and generates a new XML for each one, it automatically adds the "Certificate" node to each individual file.
This way, signature validation can be performed on all tax documents.
3.1. Manual JSON upload through Gosocket's Upload
Gosocket has a tool within the Inbox platform that allows the supplier to directly upload the JSON file of their documents.
- Access path: Main menu > Upload > Manual Upload.
From this section, the user can select the JSON file from their device's file explorer or, if preferred, drag and drop it directly onto the interface.
Once the document is received, the solution automatically starts the processing and validation flow.

Once the JSON file is received through the manual upload option, the following will be identified:
a. How many JSON files were received in total, how many were processed successfully, and how many have errors.

b. When clicking the “Details” button, a popup will be displayed with the “Error Details” identifying the possible errors that the JSON file manually uploaded through this option may contain; otherwise, if the document has no errors, a detail will be shown indicating that it was successfully uploaded to the Gosocket platform:

c. Finally, the document will be displayed in the Inbox received tray, with all validations completed.

3.1.1. Considerations for the manual JSON upload
- Up to 100 JSON files can be uploaded in a single upload.
- Schema, signature, and Tax Authority validations will be performed.
- The tax documents stipulated by the Tax Authority must be sent in JSON format.
The tax documents that can be received are:
- Electronic Sales Invoice.
- Electronic export sales invoice.
- Credit Note.
- Debit Note.
- Electronic payroll.
- Support document.
3.2. Exchange mailbox
This is the process by which the supplier sends its JSON files through an email mailbox. Each country has specific addresses assigned according to the work environment.
The mailboxes to be used, according to the environment, are:
- Sandbox (Testing):
sv_ms_sbx@inbound.gosocket.com - Production:
sv@recepcionprd.gosocket.net
Note: If a custom exchange mailbox is needed for a client, it must be escalated to the commercial team since this request generates an additional cost.
3.2.1. Considerations for the exchange mailbox
It is important to keep the following points in mind when sending documents, as this will prevent them from being rejected by the application.
a. The tax documents that can be sent through the exchange mailbox are:
- Invoice
- Settlement Voucher
- Withholding Certificate
- Export Invoice
- Accounting Settlement Document
- Delivery Note
- Debit Note
- Credit Note
- Tax Credit Voucher
- Excluded Subject Invoice
- Donation Voucher.
b. The tax documents stipulated by the Tax Authority must be sent in JSON format.
c. They can be sent individually or as several JSON files in the same email.
d. Several JSON files can be sent compressed in a file, and only the .zip extension is allowed.
e. The JSON files or compressed (.zip) files must be attached to the email sent to the mailbox provided by Gosocket.
f. Attached documents can be sent, such as the invoice PDF or others as required.
g. The maximum allowed size for an email containing related JSON and PDF files is 20MB.
h. The solution can process the graphic representation PDF, if included, and attachments that arrive at the mailbox, which, once received, are stored and associated with their respective document, allowing them to be downloaded within Inbox.
The process works as follows:
- If a JSON document arrives at the exchange mailbox along with an additional PDF file with the same name, for example: Invoice12345.json and Invoice12345.pdf, it is understood that the .pdf file is the graphic representation of the DTE, so it is synchronized that way in Gosocket and will be available for viewing.
- If a JSON document arrives at the mailbox with more than one attachment of any extension, they are associated as attachments.
Note: If there are PDF files with a different name than the JSON, they will be considered as attachments.
- For sending attachments, it is recommended to send each DTE with its attachments separately, since if more than one JSON document arrives, only the graphic representation will be stored, provided the PDF file has the same name as its corresponding JSON; the rest of the attachments will not be processed since there is no way to know which document to associate them with.
- Attachments can also be associated after the JSON has been sent; for example, if the JSON is sent without attachments, another email with attached documents (PDF, Excel, Word, etc.) can be sent afterward, and these will be associated with the previously sent document, provided the second email also includes the JSON.
3.3. Reception APIs
For the document reception process, Gosocket offers two APIs that allow sending JSON to the Gosocket platform:
3.3.1. UploadZipDocument:
This API allows sending a request that includes one or more JSON and PDF files to Gosocket, packaged together in a compressed file (.zip). Once received, the system processes the document, generates the corresponding record, and securely stores it on the platform.
a. Tracking Management
To perform detailed end to end tracking of PDF processing, from when the PDF enters the platform through the exchange mailbox until the supplier sends the JSON and the PDF to Gosocket, two unique identifiers called "externalId" and "batchId" are assigned to this entire process.
b. Upload and Storage
The API manages the reception of the .zip file, which must contain the PDF and its corresponding JSON in Gosocket's native format for correct integration into the ecosystem.
This API allows the reception, processing, and storage of electronic documents on the Gosocket platform.
c. Post-storage processing actions
Once the document has been successfully stored in Inbox, the following actions can be performed:
- Reception validations (Automatic): Technical verification of standards compliance, including:
o Validation of Schema.
o Integrity of the document's Electronic Signature.
o Validations with the corresponding Tax Authority: Indicates whether the document was accepted, rejected, or has validation errors reported by the regulatory entity after the fiscal validation.
- Receiver Message (Automatic): Application of receiver message events according to the tax authority's current regulations.
- Smart Supply Validations (On-demand Configuration): Application of logical rules and approval flows configured in the Smart Supply module.
- File Distribution (On-demand Configuration): Once the document has been processed on the Gosocket platform, and based on the previously configured distribution rule parameters, the system performs the automated transfer of the files to the configured technical destinations. This feature allows integration with various environments, such as:
o Windows Servers.
o File transfer protocols (SFTP / FTP).
o Automated email delivery.
You can view the configuration details of the Reception API at the following link: API Reception.zip - Generic
3.3.2. SendDocumentToUpload:
This API allows sending a request that includes a single JSON to Gosocket. Once received, the system processes the document, generates the corresponding record, and securely stores it on the platform.
a. Upload and Storage
The API manages the reception of the file in JSON format for its integration into the Gosocket ecosystem:
- Ingestion: Loads the document directly into Gosocket's Inbox module through the endpoint: POST - SendDocumentToUpload
- Persistence: Ensures the storage of the JSON file on the platform's servers for subsequent management.
b. Tracking Management
The successful execution of the API generates a unique identifier called trackId. This value is returned in the response and is essential for:
- Performing detailed tracking of the processing status.
- Checking the upload result via the endpoint: GET- GetDocumentUploadStatus
c. Post-storage processing actions
Once the document has been successfully stored in Inbox, the following actions can be performed:
- Reception validations (Automatic): Technical verification of standards compliance, including:
o Validation of Schema.
o Integrity of the document's Electronic Signature.
o Validations with the corresponding Tax Authority: Indicates whether the document was accepted, rejected, or has validation errors reported by the regulatory entity after the fiscal validation.
- Receiver Message (Automatic): Application of receiver message events according to the tax authority's current regulations.
- Smart Supply Validations (On-demand Configuration): Application of logical rules and approval flows configured in the Smart Supply module.
- File Distribution (On-demand Configuration): Once the document has been processed on the Gosocket platform, and based on the previously configured distribution rule parameters, the system performs the automated transfer of the files to the configured technical destinations. This feature allows integration with various environments, such as:
o Windows Servers.
o File transfer protocols (SFTP / FTP).
o Automated email delivery.
You can view the configuration details of the Reception API at the following link: Reception API
4. QUERYING RECEIVED DOCUMENTS FROM GOSOCKET
Once the documents have been processed by the reception service, they can be queried from the Gosocket portal in the Inbox/Received section. **

This section displays the following screen:
**1.**Filter section to optimize the search result. **
**2.**Display order control, with which you can modify how the search results are presented. **
**3.**List of options related to export, commercial responses, and internal movements of Electronic Documents. **
**4.**Display section with the search result details and representative icons for the most relevant status changes. **
* For more information on these points, see the Inbox documentation.**
Once the document search is performed, the main grid will display the list of received documents that met the established search criteria; in this grid, in addition to relevant document information, the document status can also be observed.

**1.**Tax authority validation.
**2.**Distribution validation.
**3.**Smart Supply status validation.
In the status column (1), the result of the applied validations will be displayed, as explained in the section JSON reception process

| Icon | Status | Validation |
|---|---|---|
| VALIDATED | Document approved by the TA | |
| REJECTED* | Document rejected by the TA | |
| Not Available in ET | Document does not exist in the TA | |
| ❗ | ERROR* | Document Rejected or internal exception by Gosocket |
| Schema Error | Document with schema error | |
| Schema error but flow continues* | The JSON has a schema error, but if this configuration is enabled, this option allows the reception flow to continue. |
* Note: By clicking on the document, the document preview will open, where you can review the notes related to the reason for rejection.

* Note: for the case where the document remains in “ERROR” status, the user can reprocess it through the actions, in order to perform the schema, signature, or TA validations again. This process is explained in detail in the Reprocessing.
* Note: Special configuration: The JSON has a schema error, but if this configuration is enabled, this option allows the reception flow to continue:
This feature can be enabled independently for each company. Its purpose is that, if a schema error is detected in the JSON when the document is received in Gosocket, the specific error detail will be automatically recorded in the document's "Notes" section.
Despite this finding, the document will continue with its normal flow toward the following reception validations, such as signature and tax authority verification.
The document will remain in Inbox as follows:
- In Gosocket, the document will remain in Validated ET with schema error status and the orange icon
will be displayed, as follows:

For more details on how to configure this feature, see the following section: XML Configuration Presents Schema Errors and Reception Flow Continues
