### Modal Content Example Source: https://www.storecove.com/docs/index A placeholder code snippet representing content that might appear within a modal dialog. This snippet is illustrative and does not contain executable code. ```text Some text in the Modal.. ``` -------------------------------- ### Configure Poland (PL) Routing Network Source: https://www.storecove.com/docs/index JSON configuration to enable the PL-KSEF network for routing invoices in Poland. This setup forces the use of the V-model network, which routes invoices to a central hub for distribution to Polish recipients. Requires prior setup of the LegalEntity for this network. ```json { "routing": { "eIdentifiers": [ { "scheme": "PL:VAT", "id": "PL0101010101" } ], "networks": [ { "application": "pl-ksef", "settings": { "enabled": true } } ] } } ``` -------------------------------- ### Tax Array Examples for DE and IN Source: https://www.storecove.com/docs/index Illustrates the structure of tax arrays for Germany (DE) and India (IN) based on tax system configurations. It shows how multiple tax items are handled for India versus single items for other countries. ```json [ { "country": "DE", "percentage": 6.0, "category": "standard" } ] ``` ```json [ { "country": "IN", "percentage": 14.0, "category": "sgst" }, { "country": "IN", "percentage": 14.0, "category": "igst" } ] ``` -------------------------------- ### Document Submissions API Source: https://www.storecove.com/docs/index Handles the submission of documents for delivery and retrieval of associated evidence. Supports submitting new documents and fetching evidence by GUID and type. ```APIDOC POST /document_submissions Description: Submit a document for delivery. Parameters: Body: document_submission (DocumentSubmission, required): Document to submit. Consumes: application/json Responses: 200: Success ([DocumentSubmissionResult](#_openapi_documentsubmissionresult)). 401: Unauthorized (No Content). 403: Forbidden (No Content). 422: Unprocessable Entity (< [ErrorModel](#_openapi_errormodel) > array). ``` ```APIDOC GET /document_submissions/{guid}/evidence/{evidence_type} Description: Get evidence for a DocumentSubmission by GUID with corresponding status. ``` -------------------------------- ### Create Legal Entity Source: https://www.storecove.com/docs/index An example of creating a new legal entity for API integration. This involves providing party details, address information, and a tenant ID. The request uses the POST method to the /legal_entities endpoint. ```curl curl \ -X POST "https://api.storecove.com/api/v2/legal_entities" \ -H "Accept: application/json" \ -H "Authorization: Bearer API_KEY_HERE" \ -H "Content-Type: application/json" \ -d "{ \"party_name\": \"Test Party\", \"line1\": \"Test Street\", \"city\": \"Test City\", \"zip\": \"Zippy\", \"country\": \"NL\", \"tenant_id\": \"my_id\"}" ``` -------------------------------- ### Webhook Instances API Source: https://www.storecove.com/docs/index Endpoints for managing webhook instances. Allows fetching a webhook instance from the queue via GET and deleting a specific instance via DELETE. ```APIDOC GET /webhook_instances/ Description: GET a WebhookInstance from the queue. After processing it successfully, DELETE it and GET the next one. When a 204 is received, the queue is empty and the polling process can sleep for a while. Responses: - HTTP Code: 200, Description: Success, Schema: [WebhookInstance](#_openapi_webhookinstance) - HTTP Code: 204, Description: Success, Schema: No Content - HTTP Code: 401, Description: Unauthorized, Schema: No Content - HTTP Code: 403, Description: Forbidden, Schema: No Content - HTTP Code: 404, Description: Not Found, Schema: No Content DELETE /webhook_instances/{guid} Description: DELETE a specific WebhookInstance Parameters: - Type: Path, Name: guid, Description: WebhookInstance guid, Schema: string (uuid), Required: true Responses: - HTTP Code: 204, Description: Success, Schema: No Content - HTTP Code: 401, Description: Unauthorized, Schema: No Content - HTTP Code: 403, Description: Forbidden, Schema: No Content - HTTP Code: 404, Description: Not Found, Schema: No Content ``` -------------------------------- ### Received Documents API Source: https://www.storecove.com/docs/index Endpoints for managing received documents. Includes methods to notify about new documents via POST and retrieve them by GUID and format via GET. ```APIDOC POST /legal_entities/{legal_entity_id}/received_documents Description: Notify about a new Document you have received. It will be parsed and then you will receive the "received_document" webhook. You can use the information in the webhook to retrieve the parsed JSON or the original through a GET request. Parameters: - Type: Path, Name: legal_entity_id, Description: The id of the LegalEntity for which the document was received., Schema: integer (int64), Required: true - Type: Body, Name: received_document, Description: Received document to process., Schema: [ReceivedDocumentCreate](#_openapi_receiveddocumentcreate), Required: true Responses: - HTTP Code: 200, Description: Success, Schema: [ReceivedDocument](#_openapi_receiveddocument) - HTTP Code: 401, Description: Unauthorized, Schema: No Content - HTTP Code: 403, Description: Forbidden, Schema: No Content - HTTP Code: 404, Description: Not Found, Schema: No Content - HTTP Code: 422, Description: Unprocessable Entity, Schema: < [ErrorModel](#_openapi_errormodel) > array Consumes: application/json GET /received_documents/{guid}/{format} Description: Get a new ReceivedDocument that you have been notified for via received_document webhook. Parameters: - Type: Path, Name: format, Description: The format in which to receive the received document., Schema: enum (json, original), Optional: true, Default: "json" - Type: Path, Name: guid, Description: The guid of the document that was received. This is the "document_guid" property of the "received_document" webhook., Schema: string (uuid), Required: true - Type: Query, Name: version, Description: The JSON content version date. The default is '1970-01-01' meaning you get all deprecated elements since nothing was deprecated before that ;). If you do not want deprecated elements, use a later date. Do not use a dynamic date, because that means when we deprecate elements they will disappear from our responses. Only used for 'json' packaging, not for 'original'. Not currently used for invoices, only for orders., Schema: string, Default: "1970-01-01", Optional: true Responses: - HTTP Code: 200, Description: Success, Schema: [Transportable](#_openapi_transportable) - HTTP Code: 401, Description: Unauthorized, Schema: No Content - HTTP Code: 403, Description: Forbidden, Schema: No Content - HTTP Code: 404, Description: Not Found, Schema: No Content Consumes: application/json ``` -------------------------------- ### Configure Romania (RO) Routing Network Source: https://www.storecove.com/docs/index JSON configuration to enable the RO-ANAF network for routing invoices in Romania. This setup forces the use of the V-model network, which routes invoices to a central hub for distribution to Romanian recipients. Requires prior setup of the LegalEntity for this network. Specific address formatting rules apply for Romanian counties and cities. ```json { "routing": { "eIdentifiers": [ { "scheme": "RO:VAT", "id": "RO010101010" } ], "networks": [ { "application": "ro-anaf", "settings": { "enabled": true } } ] } } ``` -------------------------------- ### Document and Webhook Schemas Source: https://www.storecove.com/docs/index Defines data structures for transportable documents and webhook instances. Transportable documents include details about direction, original content, and associated identifiers. Webhook instances provide payload information and a GUID for management. ```APIDOC Transportable: direction: enum (in, out) (optional) The direction of the document. document: [ReceivableDocument](#_openapi_receivabledocument) (optional) The parsed received document. Not present if the original was requested. guid: string (optional) The GUID of the document that was received. legalEntityId: integer (optional) The id of the LegalEntity this document should be sent on behalf of or was received for. original: string (optional) The document as originally received. Process this as a blob. Only present if requested. WebhookInstance: body: string (optional) The webhook body that would have been pushed if this were a push-mode webhook. guid: string (uuid) (optional) The GUID of the WebhookInstance. Use this to delete it. ``` -------------------------------- ### Evidence Type API Details Source: https://www.storecove.com/docs/index Defines parameters and responses for retrieving evidence types. Supports optional 'evidence_type' and required 'guid' path parameters. Returns a DocumentSubmissionEvidence on success (200) or specific error codes for unauthorized, forbidden, or not found scenarios. ```APIDOC API Endpoint: Evidence Type Details Parameters: - Type: Path, Name: evidence_type, Description: Type of evidence requested, Schema: enum (sending, clearing), Optional, Default: "sending" - Type: Path, Name: guid, Description: DocumentSubmission GUID, Schema: string (uuid), Required Responses: - HTTP Code: 200, Description: Success, Schema: [DocumentSubmissionEvidence] - HTTP Code: 401, Description: Unauthorized, Schema: No Content - HTTP Code: 403, Description: Forbidden, Schema: No Content - HTTP Code: 404, Description: Not Found, Schema: No Content Consumes: - application/json ``` -------------------------------- ### Storecove API Resources Overview Source: https://www.storecove.com/docs/index This section lists the primary resources available through the Storecove API, providing access to various functionalities like managing legal entities, document submissions, and webhook configurations. ```APIDOC API Resources: - AdditionalTaxIdentifiers: Manage additional tax identifiers for legal entities. - C5Activation: Activate or deactivate services related to C5. - Discovery: Discover participants and their capabilities within the network. - DocumentSubmissions: Submit documents for processing and sending. - LegalEntities: Manage legal entity information, including parties and identifiers. - PeppolIdentifiers: Manage Peppol identifiers associated with legal entities. - ReceivedDocuments: Access and manage documents received through the platform. - WebhookInstances: Configure and manage webhook subscriptions for real-time event notifications. ``` -------------------------------- ### NetworkSettings API Schema Source: https://www.storecove.com/docs/index Configuration settings for an additional routing network, including options to mock the network or enable/disable it. ```APIDOC NetworkSettings: # Whether or not to mock the network, if possible. Default: false mock: boolean # Whether or not the network is enabled scheme: boolean ``` -------------------------------- ### PINT (Peppol INTernational) Implementation Source: https://www.storecove.com/docs/index Describes Storecove's PINT implementation for handling JSON input to generate PINT documents. Covers domestic (PINT-MY) and cross-border scenarios, including receiver support and localization. ```APIDOC PINT Implementation: Functionality: - Accepts JSON input and generates the correct PINT document. Sending Scenarios: - Domestic Transactions: - Generates a PINT-MY document. - Cross-border Transactions: - If receiver supports PINT-*: - Generates a PINT-MY document. - Otherwise: - Generates a document in the receiver country’s format. Receiving Scenarios (if LegalEntity is also a receiver): - Advertises both PINT-MY and global PINT-*. - Expects to receive domestic and cross-border PINT documents. - Localizes received documents into a processable JSON format. ``` -------------------------------- ### InvoiceSubmissionResult Schema Source: https://www.storecove.com/docs/index Represents the outcome of an invoice submission, identified by a GUID. ```APIDOC InvoiceSubmissionResult: description: The result of an invoice submission fields: guid: description: A (V4) GUID for the invoice submission schema: string optional: true ``` -------------------------------- ### DocumentSubmissionResult Schema Source: https://www.storecove.com/docs/index Defines the result of a document submission, primarily containing a GUID to identify the submission. ```APIDOC DocumentSubmissionResult: guid: string (optional) - A (V4) GUID for the document submission. ``` -------------------------------- ### ReceivedDocument Schema Definition Source: https://www.storecove.com/docs/index Defines the schema for a received document, primarily containing a GUID. This is a simple object with an optional identifier. ```APIDOC ReceivedDocument: guid (optional): string (uuid) ``` -------------------------------- ### Support and Resources Source: https://www.storecove.com/docs/index Contact information and links to external resources for support, deprecated API versions, and system status updates. ```APIDOC Support Email: apisupport@storecove.com Deprecated API Versions: Status Page: ``` -------------------------------- ### InvoiceSubmissionEvidence Schema Source: https://www.storecove.com/docs/index Provides evidence of an invoice submission, including a list of actions taken and an overall status. It also contains a GUID for the submission. ```APIDOC InvoiceSubmissionEvidence: fields: actions: description: An array of actions taken to deliver the document. schema: < [InvoiceSubmissionActionEvidence](#_openapi_invoicesubmissionactionevidence) > array optional: true guid: description: The guid for the InvoiceSubmission. schema: string optional: true status: description: The overall status for this InvoiceSubmission. schema: string optional: true ``` -------------------------------- ### Invoice Tax System Options Source: https://www.storecove.com/docs/index Explains the two tax systems for invoices: 'tax_line_percentages' and 'tax_line_amounts', detailing their structure, differences, and conversion implications, especially when receivers only support 'tax_line_percentages'. ```APIDOC Invoice Tax System: Two primary tax systems are supported: 1. tax_line_percentages: - Preferred system as most receivers support it. - Tax is calculated based on the percentage applied to each line item (excluding tax). - Example Structure: | Item | Excluding tax | Tax % | Tax amount | |-------------|---------------|-------|------------| | Line 1 | $819.50 | 15%% | | | Line 2 | $2,739.00 | 15%% | | | Line 3 | $6,600.00 | 15%% | | | Charge 1 | $40.00 | 25%% | | | Allowance 1 | -$461.75 | 15%% | | | Total | $9,736.75 | | | | TaxSubtotal 15% | $9,696.75 | 15%% | $1,454.51 | | TaxSubtotal 25% | $40.00 | 25%% | $10.00 | | Total Tax | | | $1,464.51 | | Total incl. tax | $11,201.26 | | | 2. tax_line_amounts: - Tax is specified as an absolute amount for each line item. - May cause minor discrepancies (e.g., 1 cent differences) if converted to 'tax_line_percentages' by the receiver. - Example Structure: | Item | Excluding tax | Tax % | Tax amount | |-------------|---------------|-------|------------| | Line 1 | $819.50 | 15%% | $122.93 | | Line 2 | $2,739.00 | 15%% | $410.85 | | Line 3 | $6,600.00 | 15%% | $990.00 | | Charge 1 | $40.00 | 25%% | $10.00 | | Allowance 1 | -$461.75 | 15%% | -$69.26 | | Total | $9,736.75 | | | | TaxSubtotal 15% | $9,696.75 | 15%% | $1,454.52 | | TaxSubtotal 25% | $40.00 | 25%% | $10.00 | | Total Tax | | | $1,464.52 | | Total incl. tax | $11,201.27 | | | Conversion from tax_line_amounts to tax_line_percentages: - When 'tax_line_amounts' is provided but the receiver expects 'tax_line_percentages', a conversion occurs. - This conversion may involve adding a 'Rounding line' to reconcile differences. - Example Conversion Structure: | Item | Excluding tax | Tax % | Tax amount | |-------------------|---------------|-------|------------| | Line 1 | $819.50 | 15%% | $122.93 | | Line 2 | $2,739.00 | 15%% | $410.85 | | Line 3 | $6,600.00 | 15%% | $990.00 | | Charge 1 | $40.00 | 25%% | $10.00 | | Allowance 1 | -$461.75 | 15%% | -$69.26 | | Rounding line 15% | -$0.07 | 15%% | -$0.01 | | Total | $9,736.68 | | | | TaxSubtotal 15% | $9,696.68 | 15%% | $1,454.51 | | TaxSubtotal 25% | $40.00 | 25%% | $10.00 | | Total Tax | | | $1,464.51 | | Total incl. tax | $11,201.19 | | | | Payable rounding | -$0.08 | | | | Total amount pay. | $11,201.27 | | | ``` -------------------------------- ### List Supported Languages for Swagger Codegen Source: https://www.storecove.com/docs/index Executes the Swagger Codegen CLI to list all programming languages for which client libraries can be generated. ```java java -jar swagger-codegen-cli.jar langs ``` -------------------------------- ### Retrieve Sending Evidence Source: https://www.storecove.com/docs/index Fetches the evidence for a successfully sent invoice, including the exact invoice and digital signature, or email details if sent via email. Requires the specific invoice submission GUID. ```curl curl \ -X GET "https://api.storecove.com/api/v2/document_submissions/c65d43d1-4b44-40a9-8926-6743f9fc90b2/evidence" \ -H "Accept: application/json" \ -H "Authorization: Bearer API_KEY_HERE" \ -H "Content-Type: application/json" ``` -------------------------------- ### Generate Client Library with Swagger Codegen Source: https://www.storecove.com/docs/index Generates a client library for a specified language (e.g., C#) using the Swagger Codegen CLI and the Storecove OpenAPI v2 specification URL. The output is saved to a specified directory. ```java java -jar swagger-codegen-cli.jar generate -i https://api.storecove.com/api/v2/openapi.json -l csharp -o csharp ``` -------------------------------- ### Austria (AT) Country-Specific Invoice Routing Source: https://www.storecove.com/docs/index Provides an example JSON structure for routing invoices to the Austrian government (AT:GOV) or companies (AT:KUR). It specifies routing identifiers and document details required for Austrian tax compliance. ```json { "routing":{ "publicIdentifiers":[ { "scheme":"AT:GOV", "id":"b" } ] }, "document":{ "documentType":"invoice", "invoice":{ "x2y": "b2g", "references":[ { "documentType":"purchase_order", "documentId":"XXX" } ], "accountingSupplierParty":{ "customerAssignedAccountIdValue":"12345678" } } } } ``` -------------------------------- ### Storecove API: AdditionalTaxIdentifier Management Source: https://www.storecove.com/docs/index Provides reference for managing AdditionalTaxIdentifiers within the Storecove API, covering creation, retrieval, and deletion operations. ```APIDOC POST /legal_entities/{legal_entity_id}/additional_tax_identifiers Description: Create a new AdditionalTaxIdentifier. Used for secondary tax identifiers in EU consumer invoices. Parameters: - Type: Path, Name: legal_entity_id, Required: true, Description: The id of the LegalEntity, Schema: integer (int64) - Type: Body, Name: additional_tax_identifier, Required: true, Description: AdditionalTaxIdentifier to create, Schema: [AdditionalTaxIdentifierCreate](#_openapi_additionaltaxidentifiercreate) Responses: - 200: Success, Schema: [AdditionalTaxIdentifier](#_openapi_additionaltaxidentifier) - 401: Unauthorized - 403: Forbidden - 404: Not Found - 422: Unprocessable Entity, Schema: < [ErrorModel](#_openapi_errormodel) > array Consumes: application/json GET /legal_entities/{legal_entity_id}/additional_tax_identifiers/{id} Description: Get an AdditionalTaxIdentifier by its ID. Parameters: - Type: Path, Name: id, Required: true, Description: The id of the AdditionalTaxIdentifier, Schema: integer (int64) - Type: Path, Name: legal_entity_id, Required: true, Description: The id of the LegalEntity the identifier belongs to, Schema: integer (int64) Responses: - 200: Success, Schema: [AdditionalTaxIdentifier](#_openapi_additionaltaxidentifier) - 401: Unauthorized - 403: Forbidden - 404: Not Found DELETE /legal_entities/{legal_entity_id}/additional_tax_identifiers/{id} Description: Delete an AdditionalTaxIdentifier by its ID. Parameters: - Type: Path, Name: id, Required: true, Description: The id of the AdditionalTaxIdentifier, Schema: integer (int64) - Type: Path, Name: legal_entity_id, Required: true, Description: The id of the LegalEntity the identifier belongs to, Schema: integer (int64) Responses: - 200: Success (No Content) - 401: Unauthorized - 403: Forbidden - 404: Not Found ``` -------------------------------- ### C5 Redirect Activation API Source: https://www.storecove.com/docs/index Requests a new C5 Redirect Activation for legal entities, primarily for SG:UEN identifiers towards SG IRAS. This operation uses the POST method and requires the legal entity ID and redirect request details in the body. ```APIDOC POST /api/v2/legal_entities/{legal_entity_id}/c5/iras/redirect/activate Description: Request a new C5 Redirect Activation. Currently only used for SG:UEN identifiers towards SG IRAS. Parameters: Type: Path, Name: legal_entity_id, Required: true, Description: The id of the LegalEntity for which to create the C5RedirectRequest, Schema: integer (int64) Type: Body, Name: c5_redirect_request, Required: true, Description: The C5RedirectRequest to initiate, Schema: [C5RedirectRequest](#_openapi_c5redirectrequest) Responses: 200: Success response, Schema: [C5RedirectResponse](#_openapi_c5redirectresponse) 401: Unauthorized, Schema: No Content 403: Forbidden, Schema: No Content 404: Not Found, Schema: No Content 422: Unprocessable Entity, Schema: [C5RedirectResponse](#_openapi_c5redirectresponse) Consumes: application/json ``` -------------------------------- ### Storecove API Schema References Source: https://www.storecove.com/docs/index This section lists the various data models and schemas available within the Storecove API. Each entry represents a distinct structure used for data exchange, such as participants, documents, and financial entities. Detailed specifications for each schema are typically found in the full OpenAPI specification. ```APIDOC DiscoveredParticipant DiscoveryFlag DocumentInvoiceReport DocumentInvoiceResponse DocumentOrder DocumentSubmission DocumentSubmissionEvidence DocumentSubmissionEvidenceDocument DocumentSubmissionEvidenceEvidence DocumentSubmissionResult EIdentifiers ErrorModel Invoice InvoiceLine InvoiceRecipientPreflight InvoiceResponseClarification InvoiceResponseCondition InvoiceSubmissionActionEvidence InvoiceSubmissionEvidence InvoiceSubmissionResult LegalEntity LegalEntityCreate LegalEntityUpdate LineAllowanceCharge LineDelivery NetworkSettings NetworkSpecification OrderLine OriginatorCustomerParty OriginatorParty Party PayeeParty PaymentMeans PaymentTerms PeppolIdentifier PeppolIdentifierCreate PreflightInvoiceRecipientResult PublicIdentifier PublicIdentifiers RawDocumentData Rea ReceivableDocument ReceivedDocument ReceivedDocumentCreate ReceiverParty Reference Routing RoutingIdentifier RoutingNetwork SellerSupplierParty SendableDocument SenderParty Shipment Tax TaxAuthority TaxSubtotal Transportable WebhookInstance ``` -------------------------------- ### MY Invoice: Optional Import/Export Fields Source: https://www.storecove.com/docs/index This JSON example shows optional fields for import/export scenarios in Malaysian invoices. It covers additional invoice line references, customs form references, free trade agreement details, and shipment origin and allowance/charge information. ```json { "document": { "invoice": { "invoiceLines": [ { "references": [ { "documentType": "item_classification_code", "documentIdListId": "PTC", "documentId": "123456" } ] } ], "references": [ { "documentType": "my_customs_form_2", "documentId": "Reference Number of Customs Form No.2" }, { "documentType": "free_trade_agreement", "documentId": "Free Trade Agreement" } ], "delivery": { "shipment": { "originAddress": { "country": "SG" }, "allowanceCharges": [ { "amountExcludingTax": 1234, "reason": "why?", "taxesDutiesFees": [ { "category": "exempt", "country": "MY", "percentage": 0.0 } ] } ] } } } } } ``` -------------------------------- ### Storecove API Webhook Instance Operations Source: https://www.storecove.com/docs/index Documentation for interacting with Storecove webhook instances, specifically for retrieving and deleting them. This is part of the pull mode webhook functionality. ```APIDOC GET /webhook_instances Retrieves a new webhook instance from the queue. Returns: A webhook instance or HTTP 204 if the queue is empty. DELETE /webhook_instances/{instanceId} Deletes a processed webhook instance. Parameters: instanceId: The ID of the webhook instance to delete. Returns: Success confirmation or error. ``` -------------------------------- ### Create Legal Entity API Source: https://www.storecove.com/docs/index Defines the parameters required to create a new legal entity within the Storecove system. This includes address details, sender/receiver capabilities, and advertisement preferences. ```APIDOC LegalEntityCreate: description: Creates a new legal entity. parameters: acts_as_receiver: type: boolean optional: true default: true description: Whether or not this LegalEntity can act as a receiver of documents. If not, no identifiers will be provisioned on any exchange network. acts_as_sender: type: boolean optional: true default: true description: Whether or not this LegalEntity can act as a sender of documents. advertisements: type: array optional: true description: A list of document types to advertise. Use if this LegalEntity needs the ability to receive more than only invoice documents. items: type: enum values: [invoice, invoice_response, order, ordering, order_response, selfbilling] city: type: string required: true minLength: 2 maxLength: 64 description: The city. country: type: [Country](#_openapi_country) required: true description: The country. county: type: string optional: true maxLength: 64 description: County, if applicable. line1: type: string required: true minLength: 2 maxLength: 192 description: The first address line. line2: type: string optional: true maxLength: 192 description: The second address line, if applicable. override_own_credentials: type: boolean optional: true default: false description: If true, Storecove will use default credentials/signing artifacts even if specific ones are configured for this LegalEntity. party_name: type: string required: true minLength: 2 maxLength: 64 description: The name of the company. public: type: boolean optional: true default: true description: Whether or not this LegalEntity is public. Public means it will be entered into the PEPPOL directory at . rea: type: [Rea](#_openapi_rea) optional: true description: The REA details for the LegalEntity. Only applies to IT LegalEntities. tax_registered: type: boolean optional: true default: true description: Whether or not this LegalEntity is tax registered. This influences the validation of the data presented when sending documents. tenant_id: type: string optional: true maxLength: 64 description: The id of the tenant, to be used in case of single-tenant solutions that share webhook URLs. This property will be included in webhook events. third_party_password: type: string optional: true minLength: 2 maxLength: 64 description: The password to use to authenticate to a system through which to send the document, or to obtain tax authority approval to send it. This field is currently relevant only for India and mandatory when creating an IN LegalEntity. third_party_username: type: string optional: true minLength: 2 maxLength: 64 description: The username to use to authenticate to a system through which to send the document, or to obtain tax authority approval to send it. This field is currently relevant only for India and mandatory when creating an IN LegalEntity. zip: type: string required: true minLength: 2 maxLength: 32 description: The zipcode. ``` -------------------------------- ### Document Submission Methods Source: https://www.storecove.com/docs/index Details the supported methods for submitting documents to the API, including the use of JSON objects and Base64 encoded strings for various document formats. ```APIDOC Document Submission: Methods: 1. JSON Object: Submit document data directly as a JSON object. 2. Base64 Encoded String: For invoices, embed a Base64 encoded string within a JSON object. This string contains document data in specific syntaxes (e.g., UBL, CII, SAP IDOC, Microsoft Dynamics/Business Central, cXML). Supported Document Types: - Invoice - Invoice Response - Order Error Response (No Action Taken): - If an email address is not provided and the invoice cannot be sent via other means, the API will respond with HTTP 422 Unprocessable Entity and a body "No action taken". Invoice Structure Overview: An Invoice document includes sections such as: - Tax system - General data - Modifiers - Parties - References - Delivery details - Payment - Allowances and charges - Invoice lines - Amounts ``` -------------------------------- ### Document Submission API Objects Source: https://www.storecove.com/docs/index Defines the data structures used for submitting documents and managing submission evidence. Includes details on submission parameters, evidence tracking, and document metadata. ```APIDOC DocumentSubmission: Represents the document to be sent by Storecove, along with associated metadata. Parameters: document (SendableDocument, optional): The document content and metadata. idempotencyGuid (string, optional): A GUID generated by the client for idempotency. Length must be 36. Submitting multiple documents with the same GUID results in an HTTP 422 error for subsequent submissions. legalEntityId (integer, optional): The ID of the LegalEntity on whose behalf the document is sent. Either legalEntityId or receiveGuid is mandatory. receiveGuid (string, optional): The GUID from the received_document webhook. Used for sending response documents. Either legalEntityId or receiveGuid is mandatory. routing (Routing, optional): Specifies the destination for the document, such as electronic identifiers or email addresses. DocumentSubmissionEvidence: Details about documents that were sent as part of a submission. Parameters: documents (array of DocumentSubmissionEvidenceDocument, optional): An array of documents sent. For OpenPeppol, this is typically a single document. For Email, it may include multiple attachments and the raw RFC822 email. evidence (DocumentSubmissionEvidenceEvidence, optional): The evidence associated with this transmission. guid (string, optional): The GUID for the InvoiceSubmission. network (enum, optional): The network used for clearing or sending the document. Possible values: storecove, as2, email, peppol, dbnalliance, sdi, in-irp, pt-b2b, ch-qrbill, finvoice, pl-ksef, spain-face, spain-faceb2b, my-lhdnm. receiver (string, optional): The legal or tax identifier of the receiver. sender (string, optional): The legal or tax identifier of the sender. DocumentSubmissionEvidenceDocument: Represents a single document within the DocumentSubmissionEvidence. Parameters: document (string, optional): The URL where the document can be retrieved. expires_at (string, optional): The datetime when the retrieval URL expires. Format: 'YYYY-MM-DD HH:mm:ss.' mime_type (enum, optional): The MIME type of the document. Possible values: message/rfc822, application/xml, application/json, application/pdf, application/pkcs7-mime. ``` -------------------------------- ### Discovery Services API Source: https://www.storecove.com/docs/index Enables discovery of network participant existence, capabilities, and country-specific identifiers. This section includes experimental endpoints for routing and legal identification purposes. ```APIDOC POST /discovery/exists Description: Discover if a network participant exists. Parameters: Body: discoverable_participant (DiscoverableParticipant, required): The participant to check. Consumes: application/json Responses: 200: Success ([DiscoveredParticipant](#_openapi_discoveredparticipant)). 401: Unauthorized (No Content). 403: Forbidden (No Content). 422: Unprocessable Entity (< [ErrorModel](#_openapi_errormodel) > array). ``` ```APIDOC GET /discovery/identifiers Description: Discover the identifiers used in each country, for routing, for legal identification as well as for tax identification purposes. We are currently testing this endpoint with selected Customers. If you would like to participate, please contact us. Responses: 200: Success ([CountrySpecifications](#_openapi_countryspecifications)). 401: Unauthorized (No Content). 403: Forbidden (No Content). ``` ```APIDOC POST /discovery/receives Description: Discover a network participant and their capabilities. Parameters: Body: discoverable_participant (DiscoverableParticipant, required): The participant to check. Consumes: application/json Responses: 200: Success ([DiscoveredParticipant](#_openapi_discoveredparticipant)). 401: Unauthorized (No Content). 403: Forbidden (No Content). 422: Unprocessable Entity (< [ErrorModel](#_openapi_errormodel) > array). ``` -------------------------------- ### Invoice API Reference Source: https://www.storecove.com/docs/index This section details the structure of the Invoice API object. It outlines all available fields, their data types, whether they are required or optional, and provides descriptions for each parameter, including constraints and usage notes. ```APIDOC Invoice: Description: The invoice to send. Provide either invoice, or invoiceData, but not both. Fields: accountingCost (string, optional): The buyer’s accounting cost centre for this invoice, expressed as text. Minimum length: 1. accountingCurrencyExchangeRate (number, optional): Rate at which the document currency must be multiplied to convert it into the accounting currency. If included, must be non-zero. accountingCurrencyTaxAmount (number, optional): The total amount of tax in the accounting currency. If included, must be non-zero. accountingCurrencyTaxAmountCurrency (CurrencyCode, optional): The currency of the accountingCurrencyTaxAmount. This MUST be different from the documentCurrencyCode, since it makes no sense including this otherwise. Mandatory if accountingCurrencyTaxAmount is provided. accountingCurrencyTaxableAmount (number, optional): The taxable amount in the accounting currency. If included, must be non-zero. accountingCustomerParty (AccountingCustomerParty, required): The party the invoice is sent to. accountingSupplierParty (AccountingSupplierParty, optional): The party sending the invoice. When you are sending, most data for the AccountingSupplierParty is taken from the LegalEntity in the Storecove database, where your sender identity resides and has been validated. However, we provide a limited number of fields (mainly contact fields) here that you can specify on a document-by-document basis. For receiving, the full party object can be received. allowanceCharges (array, optional): An array of allowance charges. amountIncludingTax (number, optional): EXPERIMENTAL for sending. The amountIncludingTax is the payable amount, but not corrected for the prepaid amount. amountIncludingVat (number, optional): The amountIncludingVat is payable amount, but not corrected for the prepaid amount. We encourage you to use the amountIncludingTax for sending. For receiving, always use amountIncludingTax. attachments (array, optional): An array of attachments. You may provide up to 10 attachments, but the total size must not exceed 100MB after Base64 encoding. consumerTaxMode (boolean, optional): Whether or not to process the invoice in consumer tax mode. In this mode, the VAT identifier of the sender will not be the default VAT identifier, but the one that matches with the country of the receiving consumer, if that additional VAT identifier for that country is available. These additional VAT identifiers need to be added to the sending LegalEntity by Storecove, so if you need to send invoices in this mode, please contact us. Not used for receiving. Default: false. delivery (Delivery, optional): The delivery of the invoice. deliveryTerms (DeliveryTerms, optional): The terms of delivery for the document. This is currently only used for MY LHDNM. documentCurrencyCode (CurrencyCode, optional): The documentCurrencyCode is the currency for the entire invoice. We currently do not support invoices in multiple currencies. If left out, will default to EUR. dueDate (string, optional): Format: yyyy-mm-dd. Pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" invoiceLines (array, required): An array of invoice lines. invoiceNumber (string, required): The invoice number you assigned to the invoice. The invoiceNumber should be unique for the legalEntityId and year of the issueDate. This means invoice numbers can be reused in different years, as is customary in some countries. Minimum length: 1. invoicePeriod (string, optional): The period (or specific date) to which the invoice applies. Format: yyyy-mm-dd - yyyy-mm-dd. Pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2} - [0-9]{4}-[0-9]{2}-[0-9]{2}$" issueDate (string, required): Format: yyyy-mm-dd. Pattern: "^[0-9]{4}-[0-9]{2}-[0-9]{2}$" issueReasons (array, optional): An array reasons for issuing the invoice. issueTime (string, optional): Format: hh:mm:ss. Pattern: "^[0-9]{2}:[0-9]{2}:[0-9]{2}$" note (string, optional): A note to add to the invoice. payableRoundingAmount (number, optional): The rounding amount for the payable amount. This amount is calculated automatically from the invoiceLines, allowanceCharges and the taxSubtotals. If you provide this field, it must be exactly what we would have calculated. We recommend not using this field for sending. For receiving, it is always present. ``` -------------------------------- ### Download Swagger Codegen CLI JAR Source: https://www.storecove.com/docs/index Downloads the latest version of the Swagger Codegen CLI Java JAR file. This JAR is used to generate client libraries for various programming languages from an OpenAPI specification. ```shell wget --output-document=swagger-codegen-cli.jar https://repo1.maven.org/maven2/io/swagger/swagger-codegen-cli/2.4.24/swagger-codegen-cli-2.4.24.jar ``` -------------------------------- ### Create SG:UEN Identifier via API Source: https://www.storecove.com/docs/index This API documentation covers the process of creating an SG:UEN identifier using the Storecove API. It details the mandatory CorpPassCreate object and its two supported flows: email and redirect. The redirect flow includes parameters for success and failure URLs, and a mechanism for simulating the CorpPass process in sandbox environments. ```APIDOC Resource: PeppolIdentifiers Create SG:UEN Identifier This process requires the CorpPassCreate object, which supports two flows: 1. Email Flow: - Description: An email is sent to a provided address with a link to the CorpPass system for identity confirmation. - Input Parameters: - name: The name for the participant identifier. - email: The email address to send the CorpPass confirmation link to. - Process: - User receives email and clicks the link. - User confirms identity via CorpPass. - Identifier is created on the Peppol network. - Identifier becomes active on the Storecove system (up to 24 hours). 2. Redirect Flow: - Description: User is redirected to a CorpPass URL, and upon completion, one of the provided URLs is called based on success or failure. - Input Parameters: - success_url: Your site URL called upon successful identification. - failure_url: Your site URL called upon failed identification. - Process: - User is redirected to a CorpPass URL. - Upon completion, the appropriate URL (success_url or failure_url) is called. - On success, the identifier is immediately available on the Peppol network. - On failure, the identifier is automatically deleted; re-creation provides a fresh redirect URL if the process was interrupted. - Sandbox Feature: - simulate_corppass: Boolean property within CorpPass object. When true (sandbox only), simulates the CorpPass process by redirecting to a Storecove page with success/failure buttons to trigger the provided URLs. ```