# Cashier Order Creation

The merchant's business system initiates a payment collection order through the cashier's order api. The payment gateway will display the payment channel according to the payment channel configured by the merchant, and the user completes the payment order through the cashier. The payment gateway returns corresponding payment parameters according to different payment methods.

# Order API

api

Request API: /api/pay/checkoutOrder

Request method: POST

Request type: application/json or application/x-www-form-urlencoded

note

Among the parameters: "currency{currency code}-country{country}" is the matching value, the local currency corresponding to the country

# Request parameters

Field Name Variable Name Required Type Example Value Description
Merchant Number mchNo Yes String(30) M1621873433953 Merchant Number
App ID appId Yes String(24) 60cc09bce4b0f1c0b83761c9 App ID
Merchant order number mchOrderNo Yes String(30) 20160427210604000490 Order number generated by the merchant
Payment method list checkoutCodes No String(256) KAKAO_PAY,NAVER_PAY,TOSS Empty to display all activated payments,
payment methods, see:
Merchant Center->Application Management->Payment Configuration
Payment sorting method checkoutSortAuto No boolean true Whether to sort automatically,
Default: true,
true: Sort according to the system default,
false: Sort according to the checkoutCodes order
Payment amount amount Yes int 100 Payment amount, in cents
Country country Yes String(2) KR Country two-character code
*Special two-character code: EU-Eurozone
Currency code currency Yes String(3) KRW Three-digit currency code
Client IP clientIp Yes String(32) 210.73.10.148 Client IP address
Product title subject Yes String(64) Product title test Product title
Product Description body Yes String(256) product description test product description
User ID mchUserId No String(256) user1008 *Recommended parameter. If the user ID is provided for credit card payments, the card number can be saved to increase the success rate
User Email email No String(256) abc@gmail.com User Email
Asynchronous notification address notifyUrl No String(128) https://merchant.com/testNotify/p01 Payment result asynchronous callback URL, the callback will be initiated only when this value is passed
Jump notification address returnUrl No String(128) https://merchant.com/testReturn/p01 Payment result synchronization jump notification URL
Extended parameters extParam No String(512) 134586944573118714 Merchant extended parameters, which will be returned unchanged during callback
Widget Parameter widget No boolean false Whether to return widget parameters
true-returns widgetToken
false-does not return (default)
Custom text customContent No String(256) Double the first deposit Custom text at checkout (supports HTML)
Request time reqTime Yes long 1622016572190 Request API time, 13-digit timestamp
API version version Yes String(3) 1.0 API version number, fixed: 1.0
Signature sign Yes String(32) C380BEC2BFD727A4B6845133519F3AD6 Signature value, see signature algorithm for details
Signature type signType Yes String(32) MD5 Signature type, currently only supports MD5 mode
Widget Parameter widget No boolean false Whether to return widget parameters
true-returns widgetToken
false-does not return (default)

# Request Example Data

{
    "amount": 8,
    "extParam": "",
    "mchOrderNo": "mho1624005107281",
    "subject": "Product title",
    "sign": "84F606FA25A6EC4783BECC08D4FDC681",
    "reqTime": "162201672190",
    "body": "Product description",
    "version": "1.0",
    "appId": "60cc09bce4b0f1c0b83761c9",
    "clientIp": "192.166.1.132",
    "notifyUrl": "https://merchant.com/testNotify/p01",
    "signType": "MD5",
    "currency": "KRW",
    "country": "KR",
    "returnUrl": "",
    "mchNo": "M1623984572",
    "widget": false
}

# Return parameters

Field Name Variable Name Required Type Example Value Description
Return status code Yes int 0 0 - processing successful, others - processing error, see error code for details
Return information msg No String(128) Signature failure Specific error reasons, such as: signature failure, parameter format verification error
Signature information sign No String(32) CCD9083A6DAD9A2DA9F668C3D4517A84 Sign the data in data, if data is empty, it will not be returned
Return data data No String(512) {} Return order data, json format data

# Parameter data format

Field Name Variable Name Required Type Example Value Description
Payment order number payOrderId Yes String(30) U12021022311124442600 Return payment system order number
Merchant order number mchOrderNo Yes String(30) 20160427210604000490 Return the order number passed in by the merchant
Order status orderState Yes int 2 Payment order status
0-Order generated
1-Payment in progress
2-Payment successful
3-Payment failed
4-Cancelled
6-Order closed
Payment data type payDataType Yes String payUrl Payment parameter type
payUrl-jump link method
Payment Data payData No String http://pay.enjoy.link/pay.html Payment parameters used to initiate payment
Channel error code errCode No String PAYMENT_AUTH_CODE_INVALID Error code returned by the upstream channel
Channel error description errMsg No String Business Failed failed Error description returned by the upstream channel
Widget Token widgetToken No String abc123token Widget initialization token, returned when widget=true in request
Used for frontend token component initialization

# Return Example Data

{
    "code": 0,
    "data": {
        "errCode": "PAYMENT_AUTH_CODE_INVALID",
        "errMsg": "Business Failed【Payment failed, please contact the administrator. [JSON_PARSER_FAIL]】",
        "mchOrderNo": "mho1624005752661",
        "orderState": 3,
        "payOrderId": "P202106181642329900002",
        "widgetToken": ""
    },
    "msg": "SUCCESS",
    "sign": "F4DA202C516D1F33A12F1E547C5004FD"
}
Last Updated: 6/13/2026, 6:09:10 PM