---
title: "Create an e-invoicing service provider"
method: POST
path: "/v1/einvoice/service-providers"
tags: ["E-Invoicing"]
---

# Create an e-invoicing service provider

`POST /v1/einvoice/service-providers`

Creates an e-invoicing service provider.

**Note**: This operation is available only if you have the <a href="https://docs.zuora.com/en/zuora-billing/bill-your-customer/leverage-advanced-capabilities/e-invoicing/e-invoicing-overview" target="_blank">E-Invoicing</a> feature in **Early Adopter** phase enabled.

## Headers

- `Idempotency-Key` string
- `Accept-Encoding` string
- `Content-Encoding` string
- `Zuora-Track-Id` string
- `Zuora-Entity-Ids` string
- `Zuora-Org-Ids` string
- `Zuora-Version` string

## Request body

- CreateEInvoicingServiceProviderRequest
  - `companyIdentifier` string — The identifier of the company used to create a sender system ID, which serves to identify the system where the transactions are sent.
  - `name` string, required — The name of the e-invoicing service provider.
  - `provider` 'Sovos' | 'PEPPOL' | 'Avalara', required — The name of the e-invoicing service provider that can help you generate e-invoice files for billing documents.
  - `test` boolean — Whether the e-invoicing service provider's configuration is intended for testing. - If you set this field to `true`, requests are directed to the testing integration endpoints. - If you set this field to `false`, requests are directed to the production integration endpoints.
  - `apiKey` string — The API key is used to authenticate the e-invoicing service provider's requests. This field is required for configuring Sovos or Avalara as the service provider.
  - `secretKey` string — The secret key is used to authenticate the e-invoicing service provider's requests. This field is required for configuring Sovos or Avalara as the service provider.
  - `use_certificate` boolean — This field is used to indicate whether the `clientCertificate`, `clientCertificateType`, and `clientCertificatePassord` fields need to be supplied in the request. **Note:** If the flag is `true`, the TLS endpoint config is enabled. If the flag is `false`, the Non-TLS config endpoint is enabled. A TLS certificate and password are no longer required for integration with Sovos. Zuora now uses token-based authentication for all supported countries, including India.
  - `clientCertificate` string, byte — The client certificate is used to authenticate the e-invoicing service provider's requests, which should be in base64 encoded format. This field is required for configuring Sovos as the service provider.
  - `clientCertificateType` string — The client certificate type is used to specify the type of the client certificate. This field is required for configuring Sovos as the service provider.
  - `clientCertificatePassword` string, password — The client certificate password is the password to protect the client certificate. This field is required for configuring Sovos as the service provider.

## Response `200`

OK

- GetEInvoicingServiceProviderResponse
  - `companyIdentifier` string — The identifier of the company used to create a sender system ID, which serves to identify the system where the transactions are sent.
  - `id` string — The ID of the e-invoicing service provider.
  - `name` string — The name of the e-invoicing service provider.
  - `provider` 'Sovos' | 'PEPPOL' | 'Avalara' — The name of the e-invoicing service provider that can help you generate e-invoice files for billing documents.
  - `serviceProviderNumber` string — The unique number of the e-invoicing service provider.
  - `test` boolean — Whether the e-invoicing service provider's configuration is intended for testing. - If you set this field to `true`, requests are directed to the testing integration endpoints. - If you set this field to `false`, requests are directed to the production integration endpoints.
  - `apiKey` string — The API key is used to authenticate the e-invoicing service provider's requests. This field only applies to the Sovos or Avalara service provider.
  - `use_certificate` boolean — This field is used to indicate whether the `clientCertificate`, `clientCertificateType`, and `clientCertificatePassord` fields need to be supplied in the request. **Note:** If the flag is `true`, the TLS endpoint config is enabled. If the flag is `false`, the Non-TLS config endpoint is enabled. A TLS certificate and password are no longer required for integration with Sovos. Zuora now uses token-based authentication for all supported countries, including India.
  - `clientCertificate` string, byte — The client certificate is used to authenticate the e-invoicing service provider's requests, which should be in base64 encoded format. This field only applies to the Sovos service provider.
  - `clientCertificateType` string — The client certificate type is used to authenticate the e-invoicing service provider's requests. This field only applies to the Sovos service provider.

## Other responses

- `500` — Internal Server Error
- `4XX` — Request Errors

---

[API](https://skmtc.dev/zuora/apis/api-reference.md) · [All operations](https://skmtc.dev/zuora/apis/api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/zuora/api-reference/revisions/d11e237f3e54/schema)
