Workflow
Register the issuer
Call the Register Issuer API to register the supplier as an issuer. Save the returned
issuerId.Issue a certificate registration URL
Use
issuerId with the Retrieve Issuer Certificate Registration URL API to obtain a URL where the supplier can register their certificate.Supplier registers the certificate
The supplier accesses the issued URL and registers their certificate. This step must be performed by the supplier directly. For the redirect return and result verification after registration, see Certificate Registration Integration.
Request reverse issuance
Call the Request Reverse Issuance API.
Obtain the approval URL
Call the Retrieve Reverse Issuance Approval URL API to obtain the approval page URL. The generated URL is valid for 10 minutes.
Simple approval
The supplier accesses the approval URL and approves the tax invoice. Expose the URL from the platform by opening a new tab, navigating to the page, and so on.
Receive the issuance-complete webhook
Once approval is complete, a webhook sends a notification that includes
taxInvoiceUrl.Retrieve the tax invoice (optional)
Check the issuance result with the Retrieve Tax Invoice API.
Handling duplicate requests
You can include the optionalBolta-Client-Reference-Id header in a reverse issuance request. Enter a non-blank value between 1 and 255 characters, and use a new value for each issuance request.
If the same API key reuses a value, the API returns HTTP 400 with INVALID_REQUEST, even when the request body is identical. If you do not receive a response, do not submit the reverse issuance request again. Check whether it was accepted with the client reference status API. See the Authentication guide for the full rules.
Canceling a reverse issuance request
Before approval, you can cancel the reverse issuance request by calling the Cancel Reverse Issuance Request API.- On a successful cancellation, the response is returned with HTTP 200.
- If the request has already been approved, canceled, or issued, an error is returned.
When this fits
- When you want to complete the approval process within the platform’s UX
- When the supplier has already registered a certificate
- When you need to track the approval status in real time
