Skip to main content
Some links point to the service guide, which is currently available in Korean only.

API key authentication (Basic Auth)

The Bolta API uses HTTP Basic Authentication. Base64-encode your API key and include it in the Authorization header.
You must append a colon (:) after the API key before Base64-encoding it.
Example

Test key vs. live key

Issuance requested with a test key is not processed for real and is not reported to the National Tax Service (NTS). Always use a test key during development and testing.
For how to issue an API key, see the API key guide.

Request headers

Client-Reference-Id

Bolta-Client-Reference-Id identifies an issuance request. Tax invoices and cash receipts handle duplicate requests differently.

Tax invoices

You can optionally send a non-blank value between 1 and 255 characters with standard issuance, amendment, and reverse issuance requests.
After a value is used with an API key, that API key cannot reuse it for another tax invoice request, regardless of the request content or endpoint. A duplicate request returns HTTP 400 with INVALID_REQUEST. If you do not receive a response because of a network error, do not resend the request. Pass the value as clientReferenceId to retrieve the processing status.
Use a new value when submitting a new issuance request.

Cash receipts

Cash receipt issuance and cancellation requests require a value between 1 and 255 characters. If the same API key retries with the same client reference ID, request content, and request type, the API returns 202 Accepted with the existing request’s issuanceKey. If the request content or type differs, the API returns 409 Conflict with IDEMPOTENCY_CONFLICT. Use a different value for a cancellation request than for its issuance request. See the Cash receipt guide for the full request flow.