Going live

A checklist for moving from sandbox to production. Verify the whole flow in the sandbox, then switch to a production key, and the base URL stays the same.

Before launch

1
Tested in the sandbox
Issuing an invoice, sending via Peppol, and (if relevant) receiving a document have all been tested in the sandbox with the efk_pk_test_… key.
2
Errors and 429 handled
Your application correctly handles error codes and respects Retry-After on rate limits.
3
Keys stored securely
Keys live in a server-side environment / secret store, not in client-side code or in a repository.
4
Idempotency
On retries, you store the id of created documents to avoid duplicates.
5
Organization mapping
You send the correct X-Organization-Id for each client organization.

Switching to production

6
Production key
After the partner is activated, an administrator issues a production key efk_pk_live_…. Replace the sandbox key with it in your production configuration.
7
Real sending
Live sends go through Peppol for real: verify billing/credits and delivery status in the Documents section.
One code path: call the same endpoints in the same order in the sandbox and in production, including POST /v1/agent/peppol/enroll with a token. Going to production means swapping the test key for the live key. The differences and the timeline are in Sandbox vs. production.
Sandbox and production are separated only by the key prefix. Make sure you're actually using efk_pk_live_… in production, not a test key.

FS verification token

A production (live) Peppol enroll requires an FS verification token, a hex code from DIČ verification at the Slovak Financial Administration. The sandbox requires it too and any hex is enough (the lenient sandbox of accounts registered before 02.10.2026 does not require it until 01.11.2026 and returns a warning); with an efk_pk_live_… key it's required always, and without it POST /v1/agent/peppol/enroll returns VALIDATION_ERROR.

The token is sent in the enroll body as verificationTokenHex (lowercase / uppercase hex). How to obtain the token for a given organization is handled by FS onboarding: contact support at podpora@efaktura.sk. You can also progressively report an organization's onboarding status via POST /v1/agent/organizations/{id}/activation-token with body { "token": "…" }, which advances the organization through its lifecycle (caka_na_token → caka_na_fs).

Organization offboarding (cancelling Peppol reception)

A client leaving or switching provider needs no support ticket: POST /v1/agent/organizations/{id}/peppol/deactivate (scope org:provision). We de-register the participant from the SMP, suspend reception, revoke the bound FS mandate and move the organization to deaktivovane. The response carries status (deactivated, or already_inactive on a repeated call), participant_id and deregistered_at; your endpoints receive participant.deactivated.

In-flight transfers finish first: while the organization has sends in QUEUED or SENDING, the call returns 409 PEPPOL_PENDING_TRANSFERS with the count in details.pending_transfers. Retry later or send { "force": true }. Received documents, original UBL and delivery evidence stay available through the API after deactivation. Re-activation: POST /v1/agent/peppol/enroll with a fresh FS token.

Partner activation: 3 steps

Production access (and with it the efk_pk_live_… key) moves through three steps right in the partner portal: you track the whole thing on the Overview (Onboarding section), no manual e-mails with a key or attachments. For standard volume/pricing (catalogue terms) the system approves the request automatically: no waiting on an admin.

1
Request production access
The "Request production access" button on the Overview. Catalogue terms are approved instantly and the contract starts generating; anything outside the catalogue (edited terms) goes to eFaktúra for review.
2
Contract: e-mail code signature
The system generates a contract with the agreed terms. You sign it via a link right in the portal: review the PDF, fill in the signatory's name and function, request a 6-digit code by e-mail to the partner contact address, and enter it to sign: no drawing, printing, or scanning. The final signed PDF (with a code-verification audit record) is downloadable from the portal and in the confirmation e-mail.
3
Production key
Once the contract is signed, production access activates and you generate the efk_pk_live_… key in the portal, a one-time reveal. Save it immediately; it won't be shown in full again. Billing runs monthly in arrears per the price list, no upfront payment.
SAPI-SK is optional: if you don't use that interface, this step doesn't apply to you and nothing blocks the rest of the flow.

Changing the agreed terms after signing (volume, package, price list) does not modify the existing contract: a renegotiation generates and re-signs a new contract with the current terms; the original stays as an archival record.

Credits and billing

The sandbox is always free: test sends (efk_pk_test_…) go through the TEST network, aren't billed, and don't consume credits. Production sending via Peppol consumes credit / is billed per transaction.

PeriodBilling for production sends
Until Nov 30, 2026 (promo)€0 base fee up to the promo transaction limit per month (API 1,000 tx/month, not prorated). Usage above the limit is billed monthly in arrears at the total volume's band rate; the billed amount is subject to the €10 ex-VAT monthly minimum (during the promo only in a month with billable transactions). White-label partners (contracts from 5 Sep 2026) pay a €99 ex-VAT platform minimum per month (€118.80 on the monthly programme) every month from production activation; it covers up to 2,500 transactions per month.
From Dec 1, 2026Volume price list: the month's transaction volume selects one rate (€0.055 – €0.0194 / tx) applied to the whole volume; a sent document or credit note = 1 tx, a received document = 0.5 tx. Two programmes: the annual programme paid upfront (table rates ×1.00; 12 months paid upfront from a volume estimate after activation, band from the annual volume, settled after 12 months) and the monthly programme with no commitment (×1.20; band from the month's own volume, invoiced monthly in arrears). No setup fee; minimum monthly charge €10 ex VAT for every calendar month from production activation, including months without transactions (the same on both programmes; the ×1.20 coefficient does not apply to it). Price list & calculator: efaktura.sk/api-rest.
The partner promo (ending Nov 30, 2026) is different from the FA web promo (ending Jan 1, 2027, a per-org credit model), so don't confuse them. If there isn't enough credit for a live send, POST /v1/agent/peppol/send returns 402 with the INSUFFICIENT_CREDIT code.

Need help going live? Contact us via the partner portal or at podpora@efaktura.sk.