POPBill Developers
API Reference

1. Issue

1.1. RegistIssue - Issue the Invoice

POST https://popbill-test.linkhub.co.kr/Statement
POST https://popbill.linkhub.co.kr/Statement
  • This API issues the invoice and process it as “issued”.
  • The POPBiLL service website provides an automatic approval option to allow the issuance to return the document status as “pending for approval” instead of “issued” by modifying the option setting via [명세서(Invoice)] > [환경설정(Preference)] menu.
  • When issuing an Invoice via [RegistIssue – Issue the invoice] API, service points will be deducted, and a notification mail will be sent to the buyer’s email address.
Request
Request Headers
No. Field Mandatory Description
Authorization Y Auth Token
Content-Type Y Request body format
application/json
Accept-Language N Response language
ko-KR: default
en-US
Accept-Encoding N Response compression method
gzip
X-HTTP-Method-Override Y Request method override
ISSUE
X-PB-UserID N User’s POPBiLL ID
Request Body
No. Field Type Length Mandatory Description
itemCode number 3 Y Types of invoices
  • 121transaction details
  • 122bill
  • 123estimate
  • 124purchase order
  • 125deposit slip
  • 126receipt
mgtKey string 24 Y Document id
a unique value that can be entered with alphanumeric values and special characters(‘-’, ‘_’)
formCode string 8 N Code for customized template
POPBiLL default template will be applied if not entered.
writeDate string 8 Y Date of preparation
format : yyyyMMdd
taxType string 2 Conditional Taxation type
과세taxable
영세zero-rated
면세exempted
purposeType string - Y Payments received or not
영수payment received
청구payment not received
없음none
serialNum string 30 N Serial number
taxTotal string 18 Y Sum of tax amount
integer values(+/-) only
decimals will be automatically truncated
supplyCostTotal string 18 Y Sum of supply values
integer values(+/-) only
decimals will be automatically truncated
totalAmount string 18 N Total amount
integer values(+/-) only
decimals will be automatically truncated
remark1 string 150 N Remark 1
remark2 string 150 N Remark 2
remark3 string 150 N Remark 3
senderCorpNum string 10 Y [Seller] business registration number
10 digits except a hyphen(‘-’)
senderTaxRegID string 4 N [Seller] identification number of a branch place
4 digits value
senderCorpName string 200 N [Seller] company name
senderCEOName string 100 N [Seller] CEO name
senderAddr string 300 N [Seller] company address
senderBizType string 100 N [Seller] type of business
senderBizClass string 100 N [Seller] items of business
senderContactName string 100 N [Seller] name of the person in charge
senderDeptName string 40 N [Seller] department of the person in charge
senderTEL string 20 N [Seller] contact number of the person in charge
senderHP string 20 N [Seller] cell phone number of the person in charge
senderEmail string 100 N [Seller] email of the person in charge
senderFAX string 20 N [Seller] FAX number of the person in charge
receiverCorpNum string 10 N [Buyer] business registration number
receiverTaxRegID string 4 N [Buyer] identification number of a branch place
4 digits value
receiverCorpName string 200 N [Buyer] company name
receiverCEOName string 100 N [Buyer] CEO name
receiverAddr string 300 N [Buyer] company address
receiverBizType string 100 N [Buyer] type of business
receiverBizClass string 100 N [Buyer] items of business
receiverContactName string 100 N [Buyer] name of the person in charge
receiverDeptName string 40 N [Buyer] department of the person in charge
receiverTEL string 20 N [Buyer] contact number of the person in charge
receiverHP string 20 N [Buyer] telephone number of the person in charge
receiverEmail string 100 N [Buyer] email of the person in charge
receiverFAX string 20 N [Buyer] FAX number of the person in charge
propertyBag object - N Additional property
for each different type of invoice, enter property as “key”, “value” format.
refer to [Forms - Additional Properties for Standard Form]
detailList array - N Detailed list of items
no limit on length
No. Field Type Length Mandatory Description
serialNum number - Y Serial number
enter consequently from 1
purchaseDT string 8 N Date of trade
format : yyyyMMdd
itemName string 100 N Order product name
spec string 60 N Specification
qty string 12 N Quantity
allowed to enter two decimal places
unitCost string 18 N Unit price
allowed to enter two decimal places.
allowed to enter (-) integer values.
supplyCost string 18 N Supply values
integer values(+/-) only
decimals will be automatically truncated
tax string 18 N Tax amount
integer values(+/-) only
decimals will be automatically truncated
remark string 100 N Remark
spare1 string 100 N Spare 1
spare2 string 100 N Spare 2
spare3 string 100 N Spare 3
spare4 string 100 N Spare 4
spare5 string 100 N Spare 5
spare6 string 100 N Spare 6
spare7 string 100 N Spare 7
spare8 string 100 N Spare 8
spare9 string 100 N Spare 9
spare10 string 100 N Spare 10
spare11 string 100 N Spare 11
spare12 string 100 N Spare 12
spare13 string 100 N Spare 13
spare14 string 100 N Spare 14
spare15 string 100 N Spare 15
spare16 string 100 N Spare 16
spare17 string 100 N Spare 17
spare18 string 100 N Spare 18
spare19 string 100 N Spare 19
spare20 string 100 N Spare 20
memo string 200 N Memo for user’s convenience
emailSubject string 300 N Title of a notification mail sent to a buyer
POPBiLL default email title will be assigned if not entered
Request Example
curl --request POST \
  --url 'https://{domain}/Statement' \
  --header 'Authorization: Bearer {token}' \
  --header 'X-HTTP-Method-Override: ISSUE' \
  --header 'Content-Type: application/json' \
  --data '{
    "itemCode": 121,
    "mgtKey": "TEST202510261130",
    "writeDate": "20251026",
    "taxType": "과세",
    "purposeType": "청구",
    "senderCorpNum": "1234567890",
    "receiverCorpName": "receiver Company name",
    "supplyCostTotal": "10000",
    "taxTotal": "1000",
    "detailList": [
        {
            "serialNum": 1,
            "purchaseDT": "20251117",
            "itemName": "품명",
            "spec": "규격",
            "qty": "1",
            "unitCost": "10000",
            "supplyCost": "10000",
            "tax": "1000",
            "remark": "비고",
            "spare1": "여분1"
        }
    ]
}'
Response
Response Body
No. Field Type Length Description
code number - API response code
1Success
message string - API response message
invoiceNum string 24 POPBiLL Confirm Number
POPBiLL automatically assigns this when issuing a tax invoice.
Response Example
{
    "code": 1,
    "message": "발행 완료",
    "invoiceNum": "123456789020251026000001"
}

1.2. Cancel - Cancel the issuance of invoice

POST https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}
POST https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}
  • This API processes an invoice of a status “issued” as “cancelled”.
  • You can reuse a document ID if you delete a “cancelled” invoice.
Request
Request Headers
No. Field Mandatory Description
Authorization Y Auth Token
Content-Type Y Request body format
application/json
Accept-Language N Response language
ko-KR: default
en-US
Accept-Encoding N Response compression method
gzip
X-HTTP-Method-Override Y Request method override
CANCEL
X-PB-UserID N User’s POPBiLL ID
Path Parameters
No. Field Type Length Mandatory Description
ItemCode number - Y Types of invoices
  • 121transaction details
  • 122bill
  • 123estimate
  • 124purchase order
  • 125deposit slip
  • 126receipt
MgtKey string 24 Y Document ID
Request Body
No. Field Type Length Mandatory Description
memo string 200 N Memo for user’s convenience
Request Example
curl --request POST \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}' \
  --header 'Authorization: Bearer {token}' \
  --header 'X-HTTP-Method-Override: CANCEL' \
  --header 'Content-Type: application/json' \
  --data '{
    "memo": "메모"
  }'
Response
Response Body
No. Field Type Length Description
code number - API response code
message string - API response message
Response Example
{
    "code": 1,
    "message": "취소 완료"
}

1.3. Delete - Delete a revocable invoice

POST https://popbill-test.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}
POST https://popbill.linkhub.co.kr/Statement/{ItemCode}/{MgtKey}
  • This API deletes a revocable invoice.

    ※ available status to delete : “cancelled”

Recommend to implement this API only if you need to reuse a document ID of an invoice.

Request
Request Headers
No. Field Mandatory Description
Authorization Y Auth Token
Accept-Language N Response language
ko-KR: default
en-US
Accept-Encoding N Response compression method
gzip
X-HTTP-Method-Override Y Request method override
DELETE
X-PB-UserID N User’s POPBiLL ID
Path Parameters
No. Field Type Length Mandatory Description
ItemCode number - Y Types of invoices
  • 121transaction details
  • 122bill
  • 123estimate
  • 124purchase order
  • 125deposit slip
  • 126receipt
MgtKey string 24 Y Document ID
Request Example
curl --request POST \
  --url 'https://{domain}/Statement/{ItemCode}/{MgtKey}' \
  --header 'Authorization: Bearer {token}' \
  --header 'X-HTTP-Method-Override: DELETE'
Response
Response Body
No. Field Type Length Description
code number - API response code
message string - API response message
Response Example
{
    "code": 1,
    "message": "삭제 완료"
}