home

Indirect Tax

Sovos Docs

Show Page Sections

Philippines

Enabling support for Philippines involves confirming prerequisites and product IDs, registering with the BIR (Bureau of Internal Revenue) tax authority, and setting up credentials.

Prerequisites

Resources

Official government resources that include detailed and valuable information on various topics:

Available products

  • ph_PHInvoice_CAS_2.0

  • ph_PHInvoice_POS_2.0

  • ph_PHInvoice_CRM_2.0

  • PH_DOCUMENT_1_2.0

Error handling

When handling errors, the client application must follow the Indirect Tax API's error handling principles, as specified in the error handling documentation.

In general, all error codes in the 400 range are client errors, which you need to analyze. After fixing the error, you can resend the request. Error codes 408 and 429 are exceptions: In these cases, you should wait at least 60 seconds before retrying. Error codes in the 500 range are server errors. In that case, resend the request according to the instructions given on the error handling documentation, which also includes a full list of error codes Indirect Tax API can return.

Configure the transmission credentials for the Philippines

You must have already configured a company and a product, as well as obtained the BIR EIS credentials.
Setting up transmission credentials is required for reporting invoices to BIR EIS.
  1. Send a POST request to the endpoint URL:
    POST https://api-test.sovos.com/v2/configurations/organizations/{orgId}/settings
    Note:

    If your company supports multiple products, you must upload the transmission credentials for each product separately.

  2. Include the following headers in your request:
    • Authorization: Bearer {accessToken}

    • Content-Type: application/json

    • x-correlationId: {uniqueValue}

  3. Include the following parameters inside the JSON payload in the request body:
    NameTypeRequiredDescription
    contextstringYesEnter "transmission"
    configurationsarray of objectsYes
    namestringYesEnter "partner_credentials_BIR"
    valueobjectYes
    userIdstringYesThe user ID obtained from BIR-EIS
    passwordstringYesThe password obtained from BIR-EIS
    accreditationId stringYesThe accreditation ID obtained from BIR-EIS
    applicationIdstringYesThe application ID obtained from BIR-EIS
    applicationSecretKeystringYesThe application secret obtained from BIR-EIS
    scopeobjectYes
    categorystringYesEnter "ph_inv"
    productIdstringYesEnter "ph_PHInvoice_CAS_2.0", "ph_PHInvoice_POS_2.0", or "ph_PHInvoice_CRM_2.0".
    orgIdstringYesThe organization ID obtained from the Sovos Professional Services team.
    taxIdstringYesThe tax ID of the company for which the credentials are being configured.

Upon successful creation, the API will return a JSON object containing the uploaded transmission credentials and their assigned SETTING-ID.

Samples for uploading transmission credentials for the Philippines

Request sample

Request sample for uploading new transmissions credentials:

curl --location --request POST 'https://api-test.sovos.com/v2/configurations/organizations/YOUR-ORG-ID/settings' \
--header 'x-correlationId: developer-guide' \
--header 'Content-Type: application/json' \
--data-raw '[
    {
        "context": "transmission",
        "configurations": [
            {
                "name": "partner_credentials_BIR",
                "value": {
                    "userId": INSERT-USERID-HERE,
                    "password": INSERT-PASSWORD-HERE,
                    "accreditationId": INSERT-ACCREDITATIONID-HERE,
                    "applicationId": INSERT-APPLICATIONID-HERE,
                    "applicationSecretKey": INSERT-APPLICATIONSECRET-HERE
                },
                "scope": {
                    "category": "ph_inv",
                    "productId": "ph_PHInvoice_POS_2.0",
                    "orgId": YOUR-ORG-ID,
                    "taxId": YOUR-COMPANY-TAXID
                }
            }
        ]
    }
]'

Response sample

Response sample for uploading new transmissions credentials:

{
    "status": 201,
    "message": "Created",
    "success": true,
    "timestamp": 1664826411521,
    "data": [
        {
            "message": "Configurations are created",
            "statusCode": 201,
            "configurationContextResponse": {
                "context": "Transmission",
                "configurations": [
                    {
                        "id": SETTING-ID,
                        "name": "partner_credentials_BIR",
                        "value": {
                            "userId": INSERT-USERID-HERE,
                            "password": INSERT-PASSWORD-HERE,
                            "accreditationId": INSERT-ACCREDITATIONID-HERE,
                            "applicationId": INSERT-APPLICATIONID-HERE,
                            "applicationSecretKey": INSERT-APPLICATIONSECRET-HERE
                        },
                        "scope": {
                            "category": "ph_inv",
                            "productId": "ph_PHInvoice_POS_2.0",
                            "orgId": YOUR-ORG-ID,
			    "taxId": YOUR-COMPANY-TAXID
                        },
                        "auditData": {
                            "createdAt": 1664826410,
                            "createdBy": "user@company.com",
                            "isDeleted": false,
                            "version": 1
                        }
                    }
                ]
            }
        }
    ]
}

Configure the signing credentials for the Philippines

You must have already configured a company and a product, as well as obtained the BIR EIS credentials.
Setting up signing credentials is a BIR EIS requirement, as all reported invoices must be signed.
  1. Send a POST request to the endpoint URL:
    POST https://api-test.sovos.com/v2/configurations/organizations/{orgId}/settings
    Note:

    If your company supports multiple products, you must upload the signing credentials for each product separately.

  2. Include the following headers in your request:
    • Authorization: Bearer {accessToken}

    • Content-Type: application/json

    • x-correlationId: {uniqueValue}

  3. Include the following parameters inside the JSON payload in the request body:
    NameTypeRequiredDescription
    contextstringYesEnter "signing"
    configurationsarray of objectsYes
    namestringYesEnter "credentials"
    valueobjectYes
    certificateFileDatastringYesThe contents of the BIR-EIS signing certificate (private key) after converting it to Base64
    keyIdstringYesThe key ID retrieved from BIR-EIS
    scopeobjectYes
    categorystringYesEnter "ph_inv"
    productIdstringYesEnter "ph_PHInvoice_CAS_2.0", "ph_PHInvoice_POS_2.0", or "ph_PHInvoice_CRM_2.0"
    orgIdstringYesThe organization ID obtained from the Professional Services team
    taxIdstringYesThe tax ID of the company for which you are configuring the credentials

Upon successful creation, the API will return a JSON object containing the uploaded transmission credentials and their assigned SETTING-ID.

Samples for uploading signing credentials for the Philippines

Request sample

Request sample for uploading new transmissions credentials:

curl --location --request POST 'https://api-test.sovos.com/v2/configurations/organizations/YOUR-ORG-ID/settings' \
--header 'x-correlationId: developer-guide' \
--data-raw '[
    {
        "context": "signing",
        "configurations": [
            {
                "name": "credentials",
                "value": {
                    "certificateFileData": INSERT-CERT-FILEDATA-HERE,
                    "keyId": INSERT-KEYID-HERE
                },
                "scope": {
                    "category": "ph_inv",
                    "productId": "ph_PHInvoice_POS_2.0",
                    "orgId": YOUR-ORG-ID
                    "taxId": YOUR-COMPANY-TAXID
                }
            }
        ]
    }
]'

Response sample

Response sample for uploading new transmissions credentials:

{
    "status": 201,
    "message": "Created",
    "success": true,
    "timestamp": 1667465886908,
    "data": [
        {
            "message": "Configurations are created",
            "statusCode": 201,
            "configurationContextResponse": {
                "context": "Signing",
                "configurations": [
                    {
                        "id": SETTING-ID,
                        "name": "credentials",
                        "value": {
                            "certificateFileData": INSERT-CERT-FILEDATA-HERE,
                            "keyId": INSERT-KEYID-HERE
                        },
                        "scope": {
                            "category": "ph_inv",
                            "productId": "ph_PHInvoice_POS_2.0",
                            "orgId": YOUR-ORG-ID,
                            "taxId": YOUR-COMPANY-TAXID
                        },
                        "auditData": {
                            "createdAt": 1667465886,
                            "createdBy": "user@company.com",
                            "isDeleted": false,
                            "version": 1
                        }
                    }
                ]
            }
        }
    ]
}

Report invoice

Reporting an invoice in the Philippines is based on the Default business process, which follows this order: Mapping, Signing, and Transmission. The following diagram provides a detailed overview:

Philippines outbound flow for invoice reporting

Before we discuss each step separately, note that suppliers can only report their invoices to EIS using the Indirect Tax API, while buyers can manually retrieve only certain details from these reports. Suppliers are the ones who directly send the actual invoices to the buyers.

Here is a diagram that shows how this works:

Philippines reporting overview

Step 1: Supplier creates the Standard Business Document

Every invoice sent to Sovos must be part of a Standard Business Document (SBD). This document includes a Standard Business Document Header (SBDH) and a Sovos Document node, which in turn includes a Sovos Canonical Invoice (SCI). To create the SBD, follow the detailed instructions in the SBDH, Sovos Document, and SCI pages. Here are some key elements that should be included in the SBD and in the invoice:

Use the following values in the SBDH for documents that use the SCI format:

NodeRequiredAttributesValue
StandardBusinessDocumentHeader.Sender.IdentifierYesAuthority="PH"Supplier’s TIN
StandardBusinessDocumentHeader.Receiver.IdentifierYesAuthority="PH"
StandardBusinessDocumentHeader.DocumentIdentification.StandardYesurn:oasis:names:specification:ubl:schema:xsd:Invoice-2
StandardBusinessDocumentHeader.DocumentIdentification.TypeVersionYes2.1
StandardBusinessDocumentHeader.DocumentIdentification.TypeYesInvoice
StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: Country

Child node Identifier: PH

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: ProcessType

Child node Identifier: Outbound

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: SenderDocumentId

Child node Identifier: A unique document ID. We recommend the ERP document ID.

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: SenderSystemId

Child node Identifier: The system ID configured in the backend. This parameter is used to determine which notifications are returned to the client and what attachments they include. If SenderSystemId is not configured on the client side, it will use the default value of "DefaultSystemERP". For more information, see this topic.

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: CompanyCode

Child node Identifier: Supplier’s TIN

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: BusinessCategory

Child node Identifier: B2B or B2C

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: Mapping.OutputSchema

Child node Identifier: PHInvoice

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: Mapping.TransformDocument

Child node Identifier: SCI-TO-LEGAL_INVOICE

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: SubSchema

Child node Identifier: CAS, POS, or CRM

StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type: Version

Child node Identifier: 2.0

StandardBusinessDocumentHeader.BusinessScope.Scope.BusinessService. BusinessServiceNameYesDefault
SovosDocument.SovosCanonicalInvoice.InvoiceYesSCI

Alternatively, the supplier can use the local format (JSON) instead of SCI. Use the following values in the SBDH for documents that use the local format:

NodeRequiredValue
StandardBusinessDocumentHeader.DocumentIdentification.StandardYesPHInvoice
StandardBusinessDocumentHeader.DocumentIdentification.TypeVersionYes2.0
StandardBusinessDocumentHeader.DocumentIdentification.TypeYesPHInvoice
StandardBusinessDocumentHeader.BusinessScope.Scope (with child nodes)Yes

Child node Type:Mapping.TransformDocument

Child node Identifier: LEGAL-TO-SCI_INVOICE

SovosDocument.SovosLegalDocument.Base64Document YesA local format

You need to encode the local format (JSON) document in Base64 before you can add it as part of the SBD. Here is a sample:

    </sbd:StandardBusinessDocumentHeader>
    <svs:SovosDocument>
        <svs:SovosLegalDocument>
            <enc:Base64Document>
                <enc:EmbeddedDocument id="1" fileName="invoice.xml" mimeCode="application/xml">PD94bWwgdmVyc...FrdHVyYT4NCg==</enc:EmbeddedDocument>
            </enc:Base64Document>
        </svs:SovosLegalDocument>
    </svs:SovosDocument>
</svs:StandardBusinessDocument>
Note:

Include all the mandatory nodes, as specified in the SBDH schema. If the information cannot be provided, and the respective mandatory node has not been mentioned on the current page, for example the receiver.identifier, the node can be left empty but must still be included in the SBDH.

SBD samples
Below you will find SBD samples. In addition, there's a full sample of the SBD on the Postman Samples page.
SBD with SCI sample
<sbd:StandardBusinessDocument xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:sbd="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:ad="http://www.sovos.com/namespaces/additionalData" xmlns:sci="http://www.sovos.com/namespaces/sovosCanonicalInvoice" xmlns:svs="http://www.sovos.com/namespaces/sovosDocument" xmlns:sov="http://www.sovos.com/namespaces/sovosExtensions" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" xmlns:inv="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
	<sbd:StandardBusinessDocumentHeader>
		<sbd:HeaderVersion>1.0</sbd:HeaderVersion>
		<sbd:Sender>
			<sbd:Identifier Authority="PH">123456789</sbd:Identifier>
			<sbd:ContactInformation>
				<sbd:Contact>123456789</sbd:Contact>
				<sbd:EmailAddress/>
				<sbd:FaxNumber/>
				<sbd:TelephoneNumber/>
				<sbd:ContactTypeIdentifier/>
			</sbd:ContactInformation>
		</sbd:Sender>
		<sbd:Receiver>
			<sbd:Identifier Authority="PH">444555666</sbd:Identifier>
			<sbd:ContactInformation>
				<sbd:Contact>444555666</sbd:Contact>
				<sbd:EmailAddress/>
				<sbd:FaxNumber/>
				<sbd:TelephoneNumber/>
				<sbd:ContactTypeIdentifier/>
			</sbd:ContactInformation>
		</sbd:Receiver>
		<sbd:DocumentIdentification>
			<sbd:Standard>urn:oasis:names:specification:ubl:schema:xsd:Invoice-2</sbd:Standard>
			<sbd:TypeVersion>2.1</sbd:TypeVersion>
			<sbd:InstanceIdentifier/>
			<sbd:Type>Invoice</sbd:Type>
			<sbd:MultipleType>false</sbd:MultipleType>
			<sbd:CreationDateAndTime>2022-06-16T00:31:52Z</sbd:CreationDateAndTime>
		</sbd:DocumentIdentification>
		<sbd:BusinessScope>
			<sbd:Scope>
				<sbd:Type>Version</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2.0</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderDocumentId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>321412</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderSystemId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>UAT101</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
                <sbd:Type>CompanyCode</sbd:Type>
                <sbd:InstanceIdentifier/>
                <sbd:Identifier>123456789</sbd:Identifier>
            </sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Country</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PH</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>ProcessType</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>Outbound</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.TransformDocument</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>SCI-TO-LEGAL_INVOICE</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.OutputSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PHInvoice</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessCategory</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>B2B</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SubSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>CAS</sbd:Identifier>
			</sbd:Scope>
		 	<sbd:Scope>
                <sbd:Type>BusinessProcess</sbd:Type>
                <sbd:InstanceIdentifier/>
                <sbd:BusinessService>
                    <sbd:BusinessServiceName>Default</sbd:BusinessServiceName>
                </sbd:BusinessService>
            </sbd:Scope>
		</sbd:BusinessScope>
	</sbd:StandardBusinessDocumentHeader>
	<svs:SovosDocument>
		<sci:SovosCanonicalInvoice>
			<inv:Invoice>
			    *UBL Elements*
			</inv:Invoice>
		</sci:SovosCanonicalInvoice>
	</svs:SovosDocument>
</sbd:StandardBusinessDocument>
SBD with local format sample
<sbd:StandardBusinessDocument xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:sbd="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:ad="http://www.sovos.com/namespaces/additionalData" xmlns:sci="http://www.sovos.com/namespaces/sovosCanonicalInvoice" xmlns:svs="http://www.sovos.com/namespaces/sovosDocument" xmlns:sov="http://www.sovos.com/namespaces/sovosExtensions" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" xmlns:inv="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2">
	<sbd:StandardBusinessDocumentHeader>
		<sbd:HeaderVersion>1.0</sbd:HeaderVersion>
		<sbd:Sender>
			<sbd:Identifier Authority="PH">123456789</sbd:Identifier>
			<sbd:ContactInformation>
				<sbd:Contact>123456789</sbd:Contact>
				<sbd:EmailAddress/>
				<sbd:FaxNumber/>
				<sbd:TelephoneNumber/>
				<sbd:ContactTypeIdentifier/>
			</sbd:ContactInformation>
		</sbd:Sender>
		<sbd:Receiver>
			<sbd:Identifier Authority="PH">444555666</sbd:Identifier>
			<sbd:ContactInformation>
				<sbd:Contact>444555666</sbd:Contact>
				<sbd:EmailAddress/>
				<sbd:FaxNumber/>
				<sbd:TelephoneNumber/>
				<sbd:ContactTypeIdentifier/>
			</sbd:ContactInformation>
		</sbd:Receiver>
		<sbd:DocumentIdentification>
			<sbd:Standard>PHInvoice</sbd:Standard>
			<sbd:TypeVersion>2.0</sbd:TypeVersion>
			<sbd:InstanceIdentifier/>
			<sbd:Type>PHInvoice</sbd:Type>
			<sbd:MultipleType>false</sbd:MultipleType>
			<sbd:CreationDateAndTime>2022-06-16T00:31:52Z</sbd:CreationDateAndTime>
		</sbd:DocumentIdentification>
		<sbd:BusinessScope>
			<sbd:Scope>
				<sbd:Type>Version</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2.0</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderDocumentId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>321412</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderSystemId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>UAT101</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
                <sbd:Type>CompanyCode</sbd:Type>
                <sbd:InstanceIdentifier/>
                <sbd:Identifier>123456789</sbd:Identifier>
            </sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Country</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PH</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>ProcessType</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>Outbound</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.TransformDocument</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>LEGAL-TO-SCI_INVOICE</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.OutputSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PHInvoice</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessCategory</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>B2B</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SubSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>CAS</sbd:Identifier>
			</sbd:Scope>
		 	<sbd:Scope>
                <sbd:Type>BusinessProcess</sbd:Type>
                <sbd:InstanceIdentifier/>
                <sbd:BusinessService>
                    <sbd:BusinessServiceName>Default</sbd:BusinessServiceName>
                </sbd:BusinessService>
            </sbd:Scope>
		</sbd:BusinessScope>
	</sbd:StandardBusinessDocumentHeader>
	<svs:SovosDocument>
		<svs:SovosLegalDocument>
			<enc:Base64Document>
				<enc:EmbeddedDocument id="1" fileName="invoice.json" mimeCode="application/json">
				    *Base64 encoded invoice in Local Format (JSON)*
				</enc:EmbeddedDocument>
			</enc:Base64Document>
		</svs:SovosLegalDocument>
	</svs:SovosDocument>
</sbd:StandardBusinessDocument>

Step 2: Supplier sends the SBD to Sovos

The supplier sends a POST request to the /documents endpoint.

The request must include the following request body parameters:

NameTypeRequiredDescription
datastringYesThe SBD encoded in Base64, as created in step 1.
dataEncodingstringYesAlways enter "base64".
Note:

After receiving the document, Sovos performs a structure/schema validation of both the SCI and the SBD parts.

Request sample
curl --location --request POST 'https://api-test.sovos.com/v1/documents' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--header 'x-correlationId: SET-TO-UNIQUE-VALUE' \
--data-raw '{
	"data": "PD9...d4=",
	"dataEncoding" : "base64"
}'
Response sample
{
   "timestamp": 1605282724079,
    "status": 202,
    "success": true,
    "message": "Document Received",
    "data": {
        "documentId": "3add2b7104dc0049ff0bf410f57e0a19afaf"
    }
}

Step 3: Sovos maps the SCI into JSON

Upon receiving the SCI, Sovos maps the file into the required JSON format.

Note:

This step will be skipped if the SBD contains the invoice in the local format (JSON).

Step 4: Sovos signs the JSON

Sovos signs the document using the supplier's key.

Step 5: Sovos transmits the JSON

Sovos transmits the signed JSON file to the tax authority.

Step 6: Tax authority processes the JSON

The tax authority performs the schema validation and several business validations. Then it generates an approval or a rejection response message along with an error message, where applicable.

Step 7: Tax authority sends the response to Sovos

The tax authority sends the response to Sovos.

Step 8: Supplier retrieves the application responses

Attachments configuration
Sovos highly recommends configuring your application response attachments as download links instead of base64-encoded data to avoid potential size limitations when retrieving responses. The default option is "download links".
Note:

When you use "download links", the response contains a URL to download the file. When you use "binary data", the file is embedded in the base64-encoded response. This configuration is available through the Professional Services team.

As a response to the initial sending of the document, the client receives a JSON response message with an HTTP status code of 202 (asynchronous transaction). This means that the supplier must retrieve the application responses that become available during the transaction, which provide status information and the cleared XML encoded in Base64 after it's available during the process.

Additionally, you must consider the following details included in the response:

Transmission message
It maps to the SCIGovtStatusCode and StatusReason elements in the response message, as described in the application responses documentation, which details any warnings or additional notes to consider. The tax authority doesn't define any specific set of rules about what action to take on each error. Depending on the type of message, the user may have to modify the invoice, take some additional action, or simply make a note for the future.

To complete a transaction, the supplier must retrieve the application responses until the transaction has finished. If the supplier has subscribed to all notifications, the transaction can generate different application responses. See the table below:

#SCICloudStatusCodeSCIResponseCode Sample
1100IP
	<cac:DocumentResponse>
		<cac:Response>
			<cbc:ReferenceID/>
			<cbc:ResponseCode listID="SCIResponseCode">IP</cbc:ResponseCode>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCICloudStatusCode">100</cbc:StatusReasonCode>
				<cbc:StatusReason>Document received successfully</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIStatusAction">NOA</cbc:StatusReasonCode>
				<cbc:StatusReason>No action required</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIERPStatusCode">100-Received successfully</cbc:StatusReasonCode>
				<cbc:StatusReason>Document received successfully</cbc:StatusReason>
			</cac:Status>
		</cac:Response>
Document received successfully
2101IP
	<cac:DocumentResponse>
		<cac:Response>
			<cbc:ReferenceID/>
			<cbc:ResponseCode listID="SCIResponseCode">IP</cbc:ResponseCode>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCICloudStatusCode">101</cbc:StatusReasonCode>
				<cbc:StatusReason>Document mapped successfully</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIStatusAction">NOA</cbc:StatusReasonCode>
				<cbc:StatusReason>No action required</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIERPStatusCode"/>
				<cbc:StatusReason>Document mapped successfully</cbc:StatusReason>
			</cac:Status>
		</cac:Response>
Document mapped successfully
3200AP
	<cac:DocumentResponse>
		<cac:Response>
			<cbc:ReferenceID/>
			<cbc:ResponseCode listID="SCIResponseCode">AP</cbc:ResponseCode>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCICloudStatusCode">200</cbc:StatusReasonCode>
				<cbc:StatusReason>Authorized by the tax authority</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIStatusAction">NOA</cbc:StatusReasonCode>
				<cbc:StatusReason>No action required</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIERPStatusCode">200-Authorized</cbc:StatusReasonCode>
				<cbc:StatusReason>Authorized by the tax authority</cbc:StatusReason>
			</cac:Status>
		</cac:Response>
Authorized by the tax authority
4209IP
	<cac:DocumentResponse>
		<cac:Response>
			<cbc:ReferenceID/>
			<cbc:ResponseCode listID="SCIResponseCode">IP</cbc:ResponseCode>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCICloudStatusCode">209</cbc:StatusReasonCode>
				<cbc:StatusReason>Workflow Successfully Completed</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIStatusAction">NOA</cbc:StatusReasonCode>
				<cbc:StatusReason>No action required</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIERPStatusCode">209-Completed successfully</cbc:StatusReasonCode>
				<cbc:StatusReason>Workflow Successfully Completed</cbc:StatusReason>
			</cac:Status>
		</cac:Response>
Workflow Successfully Completed
5400RE
	<cac:DocumentResponse>
		<cac:Response>
			<cbc:ReferenceID/>
			<cbc:ResponseCode listID="SCIResponseCode">RE</cbc:ResponseCode>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCICloudStatusCode">400</cbc:StatusReasonCode>
				<cbc:StatusReason>Rejected by the tax authority or the counter party</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIStatusAction">NIN</cbc:StatusReasonCode>
				<cbc:StatusReason>Request to re-issue a corrected new invoice (or other document) or fix the error and resend the document</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIERPStatusCode">400-Rejected</cbc:StatusReasonCode>
				<cbc:StatusReason>Rejected by the tax authority or the counter party</cbc:StatusReason>
			</cac:Status>
			<cac:Status>
				<cbc:StatusReasonCode listID="SCIGovtStatusCode">ERR002</cbc:StatusReasonCode>
				<cbc:StatusReason>The Issuance date in EisUniqueId is different from Issuance date.</cbc:StatusReason>
			</cac:Status>
		</cac:Response>
Rejected by the tax authority or the counterparty

The supplier can use the following Indirect Tax API endpoints to retrieve application responses:

  • GET /notifications/PH

  • GET /documents/PH/{documentId}/notifications

GET /notifications/PH
The supplier can send a GET request to the /notifications/PH endpoint to retrieve application responses that match the configured search criteria. To make this request, set the following query parameters:
NameTypeRequiredDefaultDescription
taxIdstringNo

Include only notifications related to the specified taxId. This value relates to the CompanyCode set in the SBDH.

Note: If a request doesn't include this parameter, it will return all the notifications related to the country and the sourceSystemId parameter.

pageintegerNo1To specify the page to be returned, enter a value between 1 and 10.
perPageintegerNo10

To specify the number of results for the returned page, enter a value between 1 and 100.

Note: If the attachment file is configured to return the binary content instead of a link, use only values between 1 and 10.

sourceSystemIdstringYesInclude only notifications related to documents that originate from the given source system. This value is related to the SenderSystemId in the SBDH.
includeAcknowledgedbooleanNofalseEnter "true" to specify whether previously acknowledged notifications, within 24 hours of their acknowledgment, must be included in the result.
processTypestringNoEnter "0" to only include notifications related to outbound documents.
Request sample
curl --location --request GET 'https://api-test.sovos.com/v1/notifications/PH?page=1&perPage=2&taxId={taxId}&sourceSystemId={sourceSystemId}&processType=0' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--header 'x-correlationId: SET-TO-UNIQUE-VALUE'
Response sample
{
    "timestamp": 1633685509314,
    "status": 200,
    "success": true,
    "message": "Notifications Listed",
    "data": {
        "pageState": {
            "page": 1,
            "perPage": 50,
            "totalEntries": 1
        },
        "notifications": [
            {
                "createdDate": 1633681296,
                "metadata": {
                    "productId": "ph_PHInvoice_CAS_2.0",
                    "documentId": "3add2b7104dc0049ff0bf410f57e0a19afaf",
                    "erpDocumentId": "321412",
                    "erpSystemId": "UAT101",
                    "processType": "0",
                    "taxId": "08AAACI9260R002",
                    "sciCloudStatusCode": "200",
                    "sciResponseCode": "AP",
                    "sciStatusAction": "NOA",
                    "sciGovtStatusCode": "100"
                },
                "appPrefix": "DLT",
                "notificationId": "a8dc1aa2-fbe6-45ce-9e4c-97a3d5fdb91c",
                "content": "PEF...NlPg=="
            }
        ]
    }
}
GET /documents/PH/{documentId}/notifications
The supplier can send a GET request to the /documents/PH/{documentId}/notifications endpoint to retrieve application responses related to a single document. To make this request, set the following parameters:
NameTypeRequiredParameter typeDefaultDescription
documentIdstringYesPathThe ID of the document returned in step 2
Request sample
curl --location --request GET 'https://api-test.sovos.com/v1/documents/PH/{documentId}/notifications' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--header 'x-correlationId: SET-TO-UNIQUE-VALUE'
Response sample
{
    "timestamp": 1633685509314,
    "status": 200,
    "success": true,
    "message": "Notifications Listed",
    "data": {
        "pageState": {
            "page": 1,
            "perPage": 50,
            "totalEntries": 1
        },
        "notifications": [
            {
                "createdDate": 1633681296,
                "metadata": {
                    "productId": "ph_PHInvoice_CAS_2.0",
                    "documentId": "3add2b7104dc0049ff0bf410f57e0a19afaf",
                    "erpDocumentId": "321412",
                    "erpSystemId": "UAT101",
                    "processType": "0",
                    "taxId": "08AAACI9260R002",
                    "sciCloudStatusCode": "200",
                    "sciResponseCode": "AP",
                    "sciStatusAction": "NOA",
                    "sciGovtStatusCode": "100"
                },
                "appPrefix": "DLT",
                "notificationId": "a8dc1aa2-fbe6-45ce-9e4c-97a3d5fdb91c",
                "content": "PEF...NlPg=="
            }
        ]
    }
}

Step 9: Supplier marks the application responses as acknowledged

The supplier must process the retrieved application responses and mark them as acknowledged. This can be done by sending a PUT request to the /notifications/PH endpoint.

To make this request, set the following request body parameters:

NameTypeRequiredDescription
statusstringYesEnter "read".
notificationIdstringYesThe ID of the notification that must be marked as acknowledged.
Note: Multiple notificationId values can be acknowledged in one Indirect Tax API call by including them in a single request.
Request sample
curl --location --request PUT 'https://api-test.sovos.com/v1/notifications/PH' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer TOKEN' \
--header 'x-correlationId: SET-TO-UNIQUE-VALUE'
--data-raw '[
    {
        "status": "read",
        "notificationId": "51341d39-fd3e-4dcf-aea3-a73d73e0de76"
    }
]'
Response sample
{
    "timestamp": 1601673284,
    "status": 200,
    "success": true,
    "message": "Notifications acknowledged successfully."
}

Step 10: Archiving

Archiving follows the bundled approach, so it part of the reporting flow (Default process).

Step 11: Supplier sends the invoice to the buyer

The supplier must design a solution that accommodates the preferred business processes for delivering the invoice to the buyer because this process is outside the scope of Sovos. The invoice can be sent to the buyer before or after it has been reported to the tax authority.

SCI Samples

The samples provided below are meant to be guidelines for integration with the Indirect Tax API in the Philippines and should be treated as such, since each integrating system is unique and has different requirements. This means that the samples cannot be copied directly, and must be adapted to the your system during the integration.

Invoice issued by CAS

<?xml version="1.0" encoding="UTF-8"?>
<sbd:StandardBusinessDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:ad="http://www.sovos.com/namespaces/additionalData" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:n0="urn:oasis:names:specification:ubl:schema:xsd:CommonSignatureComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:crn="urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2" xmlns:dbn="urn:oasis:names:specification:ubl:schema:xsd:DebitNote-2" xmlns:enc="http://www.sovos.com/namespaces/base64Document" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" xmlns:inv="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDataTypes-2" xmlns:sac="urn:oasis:names:specification:ubl:schema:xsd:SignatureAggregateComponents-2" xmlns:sbc="urn:oasis:names:specification:ubl:schema:xsd:SignatureBasicComponents-2" xmlns:sbd="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:sci="http://www.sovos.com/namespaces/sovosCanonicalInvoice" xmlns:sov="http://www.sovos.com/namespaces/sovosExtensions" xmlns:svs="http://www.sovos.com/namespaces/sovosDocument" xmlns:udt="urn:oasis:names:specification:ubl:schema:xsd:UnqualifiedDataTypes-2" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:ccts-cct="urn:un:unece:uncefact:data:specification:CoreComponentTypeSchemaModule:2" xsi:schemaLocation="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader file:///C:/Git/Philippines/SCI/Philippines/Schemas/Sovos%20Document_v4/Sovos%20Document_v4/Standard%20Business%20Document/SBD.xsd">
	<sbd:StandardBusinessDocumentHeader>
		<sbd:HeaderVersion>1.0</sbd:HeaderVersion>
		<sbd:Sender>
			<sbd:Identifier Authority="PH">999999999</sbd:Identifier>
		</sbd:Sender>
		<sbd:Receiver>
			<sbd:Identifier Authority="PH">444555666</sbd:Identifier>
		</sbd:Receiver>
		<sbd:DocumentIdentification>
			<sbd:Standard>urn:oasis:names:specification:ubl:schema:xsd:Invoice-2</sbd:Standard>
			<sbd:TypeVersion>2.1</sbd:TypeVersion>
			<sbd:InstanceIdentifier/>
			<sbd:Type>Invoice</sbd:Type>
			<sbd:MultipleType>false</sbd:MultipleType>
			<sbd:CreationDateAndTime>2023-01-04T13:57:15Z</sbd:CreationDateAndTime>
		</sbd:DocumentIdentification>
		<sbd:BusinessScope>
			<sbd:Scope>
				<sbd:Type>Country</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PH</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.TransformDocument</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>SCI-TO-LEGAL_INVOICE</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.OutputSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PHInvoice</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>CompanyCode</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>999999999</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderDocumentId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2023031520kw1Ls850911040</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderSystemId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>ERPSystem</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>ProcessType</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>Outbound</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessProcess</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:BusinessService>
					<sbd:BusinessServiceName>Default</sbd:BusinessServiceName>
				</sbd:BusinessService>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessCategory</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>B2B</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SubSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>CAS</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Version</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2.0</sbd:Identifier>
			</sbd:Scope>
		</sbd:BusinessScope>
	</sbd:StandardBusinessDocumentHeader>
	<svs:SovosDocument>
		<sci:SovosCanonicalInvoice>
			<inv:Invoice>
				<cbc:CustomizationID/>
				<cbc:ID>2023031520kw1Ls850911040</cbc:ID>
				<cbc:CopyIndicator>false</cbc:CopyIndicator>
				<cbc:UUID>0000000205</cbc:UUID>
				<cbc:IssueDate>2023-03-15</cbc:IssueDate>
				<cbc:InvoiceTypeCode>01</cbc:InvoiceTypeCode>
				<cbc:Note>It's test e-invoice</cbc:Note>
				<cac:OriginatorDocumentReference>
					<cbc:ID/>
				</cac:OriginatorDocumentReference>
				<cac:AdditionalDocumentReference>
					<cbc:ID schemeID="PtuNum">FP012345-011-0123456-00001</cbc:ID>
				</cac:AdditionalDocumentReference>
				<cac:AccountingSupplierParty>
					<cac:Party>
						<cbc:IndustryClassificationCode>00000</cbc:IndustryClassificationCode>
						<cac:PartyIdentification>
							<cbc:ID>999999999</cbc:ID>
						</cac:PartyIdentification>
						<cac:PartyName>
							<cbc:Name>AAA Technology</cbc:Name>
						</cac:PartyName>
						<cac:PostalAddress>
							<cbc:StreetName>Address .......</cbc:StreetName>
						</cac:PostalAddress>
						<cac:PartyTaxScheme>
							<cac:TaxScheme>
								<cbc:TaxTypeCode>0</cbc:TaxTypeCode>
							</cac:TaxScheme>
						</cac:PartyTaxScheme>
						<cac:PartyLegalEntity>
							<cbc:RegistrationName>AAA Technology</cbc:RegistrationName>
						</cac:PartyLegalEntity>
						<cac:Contact>
							<cbc:ElectronicMail>sales@aaatech.com</cbc:ElectronicMail>
						</cac:Contact>
					</cac:Party>
				</cac:AccountingSupplierParty>
				<cac:AccountingCustomerParty>
					<cac:Party>
						<cbc:IndustryClassificationCode>00000</cbc:IndustryClassificationCode>
						<cac:PartyIdentification>
							<cbc:ID>444555666</cbc:ID>
						</cac:PartyIdentification>
						<cac:PartyName>
							<cbc:Name>BBB Corporation</cbc:Name>
						</cac:PartyName>
						<cac:PostalAddress>
							<cbc:StreetName>Addres ....</cbc:StreetName>
						</cac:PostalAddress>
						<cac:PartyLegalEntity>
							<cbc:RegistrationName>BBB Corporation</cbc:RegistrationName>
						</cac:PartyLegalEntity>
						<cac:Contact>
							<cbc:ElectronicMail>email@test.com</cbc:ElectronicMail>
						</cac:Contact>
					</cac:Party>
				</cac:AccountingCustomerParty>
				<cac:Delivery>
					<cac:DeliveryAddress>
						<cbc:StreetName>Delivery address</cbc:StreetName>
					</cac:DeliveryAddress>
				</cac:Delivery>
				<cac:Delivery>
					<cbc:ID>Air</cbc:ID>
					<cac:Despatch>
						<cbc:ID>Airnum</cbc:ID>
						<cbc:ActualDespatchDate>2021-07-30</cbc:ActualDespatchDate>
					</cac:Despatch>
				</cac:Delivery>
				<cac:Delivery>
					<cbc:ID>Lad</cbc:ID>
					<cac:Despatch>
						<cbc:ID>Bill of lading number</cbc:ID>
						<cbc:ActualDespatchDate>2021-07-30</cbc:ActualDespatchDate>
					</cac:Despatch>
				</cac:Delivery>
				<cac:AllowanceCharge>
					<cbc:ID>SeniorCitizen</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>PWD</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Regular</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Special</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Rmk2</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:AllowanceChargeReason>Additional Remark</cbc:AllowanceChargeReason>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>OtherNonTaxCharge</cbc:ID>
					<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>OtherTaxRev</cbc:ID>
					<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:PaymentExchangeRate>
					<cbc:SourceCurrencyCode>PHP</cbc:SourceCurrencyCode>
					<cbc:TargetCurrencyCode>USD</cbc:TargetCurrencyCode>
					<cbc:CalculationRate>0.02</cbc:CalculationRate>
				</cac:PaymentExchangeRate>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>InvoiceTaxType</cbc:Name>
								<cbc:TaxTypeCode>01</cbc:TaxTypeCode>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">18000</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">18000</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>VATAmt</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">150000</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">150000</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>TotNetSalesAftDisct</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:WithholdingTaxTotal>
					<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>Income</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>BusinessVAT</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>BusinessPT</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:WithholdingTaxTotal>
				<cac:LegalMonetaryTotal>
					<cbc:TaxExclusiveAmount currencyID="PHP">10000</cbc:TaxExclusiveAmount>
					<cbc:PayableAmount currencyID="PHP">168000</cbc:PayableAmount>
					<cbc:PayableAlternativeAmount currencyID="USD">3000</cbc:PayableAlternativeAmount>
				</cac:LegalMonetaryTotal>
				<cac:InvoiceLine>
					<cbc:ID/>
					<cbc:InvoicedQuantity unitCode="EA">5</cbc:InvoicedQuantity>
					<cbc:LineExtensionAmount currencyID="PHP">50000</cbc:LineExtensionAmount>
					<cac:AllowanceCharge>
						<cbc:ID>Regular</cbc:ID>
						<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
						<cbc:Amount currencyID="PHP">0</cbc:Amount>
					</cac:AllowanceCharge>
					<cac:AllowanceCharge>
						<cbc:ID>Special</cbc:ID>
						<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
						<cbc:Amount currencyID="PHP">0</cbc:Amount>
					</cac:AllowanceCharge>
					<cac:Item>
						<cbc:Description>Description 1</cbc:Description>
						<cbc:Name>Product 1</cbc:Name>
					</cac:Item>
					<cac:Price>
						<cbc:PriceAmount currencyID="PHP">10000</cbc:PriceAmount>
					</cac:Price>
					<cac:ItemPriceExtension>
						<cbc:Amount currencyID="PHP">50000</cbc:Amount>
					</cac:ItemPriceExtension>
				</cac:InvoiceLine>
				<cac:InvoiceLine>
					<cbc:ID/>
					<cbc:InvoicedQuantity unitCode="EA">5</cbc:InvoicedQuantity>
					<cbc:LineExtensionAmount currencyID="PHP">100000</cbc:LineExtensionAmount>
					<cac:AllowanceCharge>
						<cbc:ID>Regular</cbc:ID>
						<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
						<cbc:Amount currencyID="PHP">0</cbc:Amount>
					</cac:AllowanceCharge>
					<cac:AllowanceCharge>
						<cbc:ID>Special</cbc:ID>
						<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
						<cbc:Amount currencyID="PHP">0</cbc:Amount>
					</cac:AllowanceCharge>
					<cac:Item>
						<cbc:Description>Description 2</cbc:Description>
						<cbc:Name>Product 2</cbc:Name>
					</cac:Item>
					<cac:Price>
						<cbc:PriceAmount currencyID="PHP">20000</cbc:PriceAmount>
					</cac:Price>
					<cac:ItemPriceExtension>
						<cbc:Amount currencyID="PHP">100000</cbc:Amount>
					</cac:ItemPriceExtension>
				</cac:InvoiceLine>
			</inv:Invoice>
		</sci:SovosCanonicalInvoice>
	</svs:SovosDocument>
</sbd:StandardBusinessDocument>

Invoice issued by POS

This sample does not contain item lines:
<?xml version="1.0" encoding="UTF-8"?>
<sbd:StandardBusinessDocument xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://uri.etsi.org/01903/v1.4.1#" xmlns:ad="http://www.sovos.com/namespaces/additionalData" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:n0="urn:oasis:names:specification:ubl:schema:xsd:CommonSignatureComponents-2" xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2" xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2" xmlns:crn="urn:oasis:names:specification:ubl:schema:xsd:CreditNote-2" xmlns:dbn="urn:oasis:names:specification:ubl:schema:xsd:DebitNote-2" xmlns:enc="http://www.sovos.com/namespaces/base64Document" xmlns:ext="urn:oasis:names:specification:ubl:schema:xsd:CommonExtensionComponents-2" xmlns:inv="urn:oasis:names:specification:ubl:schema:xsd:Invoice-2" xmlns:qdt="urn:oasis:names:specification:ubl:schema:xsd:QualifiedDataTypes-2" xmlns:sac="urn:oasis:names:specification:ubl:schema:xsd:SignatureAggregateComponents-2" xmlns:sbc="urn:oasis:names:specification:ubl:schema:xsd:SignatureBasicComponents-2" xmlns:sbd="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader" xmlns:sci="http://www.sovos.com/namespaces/sovosCanonicalInvoice" xmlns:sov="http://www.sovos.com/namespaces/sovosExtensions" xmlns:svs="http://www.sovos.com/namespaces/sovosDocument" xmlns:udt="urn:oasis:names:specification:ubl:schema:xsd:UnqualifiedDataTypes-2" xmlns:xades="http://uri.etsi.org/01903/v1.3.2#" xmlns:ccts-cct="urn:un:unece:uncefact:data:specification:CoreComponentTypeSchemaModule:2" xsi:schemaLocation="http://www.unece.org/cefact/namespaces/StandardBusinessDocumentHeader file:///C:/Git/Philippines/SCI/Philippines/Schemas/Sovos%20Document_v4/Sovos%20Document_v4/Standard%20Business%20Document/SBD.xsd">
	<sbd:StandardBusinessDocumentHeader>
		<sbd:HeaderVersion>1.0</sbd:HeaderVersion>
		<sbd:Sender>
			<sbd:Identifier Authority="PH">999999999</sbd:Identifier>
		</sbd:Sender>
		<sbd:Receiver>
			<sbd:Identifier Authority="PH">444555666</sbd:Identifier>
		</sbd:Receiver>
		<sbd:DocumentIdentification>
			<sbd:Standard>urn:oasis:names:specification:ubl:schema:xsd:Invoice-2</sbd:Standard>
			<sbd:TypeVersion>2.1</sbd:TypeVersion>
			<sbd:InstanceIdentifier/>
			<sbd:Type>Invoice</sbd:Type>
			<sbd:MultipleType>false</sbd:MultipleType>
			<sbd:CreationDateAndTime>2023-01-04T13:57:15Z</sbd:CreationDateAndTime>
		</sbd:DocumentIdentification>
		<sbd:BusinessScope>
			<sbd:Scope>
				<sbd:Type>Country</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PH</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.TransformDocument</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>SCI-TO-LEGAL_INVOICE</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Mapping.OutputSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>PHInvoice</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>CompanyCode</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>999999999</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderDocumentId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2023032031lQPz7K10000003</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SenderSystemId</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>ERPSystem</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>ProcessType</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>Outbound</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessProcess</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:BusinessService>
					<sbd:BusinessServiceName>Default</sbd:BusinessServiceName>
				</sbd:BusinessService>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>BusinessCategory</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>B2C</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>SubSchema</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>POS</sbd:Identifier>
			</sbd:Scope>
			<sbd:Scope>
				<sbd:Type>Version</sbd:Type>
				<sbd:InstanceIdentifier/>
				<sbd:Identifier>2.0</sbd:Identifier>
			</sbd:Scope>
		</sbd:BusinessScope>
	</sbd:StandardBusinessDocumentHeader>
	<svs:SovosDocument>
		<sci:SovosCanonicalInvoice>
			<inv:Invoice>
				<cbc:CustomizationID/>
				<cbc:ID>2023032031lQPz7K10000003</cbc:ID>
				<cbc:CopyIndicator>false</cbc:CopyIndicator>
				<cbc:UUID>0000000205</cbc:UUID>
				<cbc:IssueDate>2023-03-20</cbc:IssueDate>
				<cbc:InvoiceTypeCode>01</cbc:InvoiceTypeCode>
				<cbc:Note>It's test e-invoice</cbc:Note>
				<cac:OriginatorDocumentReference>
					<cbc:ID/>
				</cac:OriginatorDocumentReference>
				<cac:AdditionalDocumentReference>
					<cbc:ID schemeID="PtuNum">FP012345-011-0123456-00001</cbc:ID>
				</cac:AdditionalDocumentReference>
				<cac:AdditionalDocumentReference>
					<cbc:ID schemeID="Min">Machine identification number</cbc:ID>
				</cac:AdditionalDocumentReference>
				<cac:AdditionalDocumentReference>
					<cbc:ID schemeID="Msn">Machine serial number</cbc:ID>
				</cac:AdditionalDocumentReference>
				<cac:AccountingSupplierParty>
					<cac:Party>
						<cbc:IndustryClassificationCode>00000</cbc:IndustryClassificationCode>
						<cac:PartyIdentification>
							<cbc:ID>999999999</cbc:ID>
						</cac:PartyIdentification>
						<cac:PartyName>
							<cbc:Name>AAA Technology</cbc:Name>
						</cac:PartyName>
						<cac:PostalAddress>
							<cbc:StreetName>Address .......</cbc:StreetName>
						</cac:PostalAddress>
						<cac:PartyTaxScheme>
							<cac:TaxScheme>
								<cbc:TaxTypeCode>0</cbc:TaxTypeCode>
							</cac:TaxScheme>
						</cac:PartyTaxScheme>
						<cac:PartyLegalEntity>
							<cbc:RegistrationName>AAA Technology</cbc:RegistrationName>
						</cac:PartyLegalEntity>
						<cac:Contact>
							<cbc:ElectronicMail>sales@aaatech.com</cbc:ElectronicMail>
						</cac:Contact>
					</cac:Party>
				</cac:AccountingSupplierParty>
				<cac:AccountingCustomerParty>
					<cac:Party>
						<cbc:IndustryClassificationCode>00000</cbc:IndustryClassificationCode>
						<cac:PartyIdentification>
							<cbc:ID>444555666</cbc:ID>
						</cac:PartyIdentification>
						<cac:PartyName>
							<cbc:Name>BBB Corporation</cbc:Name>
						</cac:PartyName>
						<cac:PostalAddress>
							<cbc:StreetName>Addres ....</cbc:StreetName>
						</cac:PostalAddress>
						<cac:PartyLegalEntity>
							<cbc:RegistrationName>BBB Corporation</cbc:RegistrationName>
						</cac:PartyLegalEntity>
						<cac:Contact>
							<cbc:ElectronicMail>email@test.com</cbc:ElectronicMail>
						</cac:Contact>
					</cac:Party>
				</cac:AccountingCustomerParty>
				<cac:AllowanceCharge>
					<cbc:ID>SeniorCitizen</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>PWD</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Regular</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Special</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>Rmk2</cbc:ID>
					<cbc:ChargeIndicator>false</cbc:ChargeIndicator>
					<cbc:AllowanceChargeReason>Additional Remark</cbc:AllowanceChargeReason>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>OtherNonTaxCharge</cbc:ID>
					<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:AllowanceCharge>
					<cbc:ID>OtherTaxRev</cbc:ID>
					<cbc:ChargeIndicator>true</cbc:ChargeIndicator>
					<cbc:Amount currencyID="PHP">0</cbc:Amount>
				</cac:AllowanceCharge>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>InvoiceTaxType</cbc:Name>
								<cbc:TaxTypeCode>01</cbc:TaxTypeCode>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">18000</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">18000</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>VATAmt</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>ExemptSales</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>ZeroSales</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>TotSalesAmt</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:TaxTotal>
					<cbc:TaxAmount currencyID="PHP">150000</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">150000</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>TotNetSalesAftDisct</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:TaxTotal>
				<cac:WithholdingTaxTotal>
					<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>Income</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>BusinessVAT</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
					<cac:TaxSubtotal>
						<cbc:TaxAmount currencyID="PHP">0</cbc:TaxAmount>
						<cac:TaxCategory>
							<cac:TaxScheme>
								<cbc:Name>BusinessPT</cbc:Name>
							</cac:TaxScheme>
						</cac:TaxCategory>
					</cac:TaxSubtotal>
				</cac:WithholdingTaxTotal>
				<cac:LegalMonetaryTotal>
					<cbc:TaxExclusiveAmount currencyID="PHP">0</cbc:TaxExclusiveAmount>
					<cbc:PayableAmount currencyID="PHP">168000</cbc:PayableAmount>
				</cac:LegalMonetaryTotal>
				<cac:InvoiceLine>
					<cbc:ID>N/A</cbc:ID>
					<cbc:LineExtensionAmount currencyID="PHP">0</cbc:LineExtensionAmount>
					<cac:Item/>
				</cac:InvoiceLine>
			</inv:Invoice>
		</sci:SovosCanonicalInvoice>
	</svs:SovosDocument>
</sbd:StandardBusinessDocument>