Skip to main content

Pay-in collection

About 3 min

Indonesia region pay-in API (IDR). See Payment methods.

Request

POST/v2.0/transaction/pay-in

Request Path:

sandbox: https://sandbox-gateway.smilepayz.com/v2.0/transaction/pay-in
production: https://gateway.smilepayz.com/v2.0/transaction/pay-in

Header Parameters

FieldRequiredTypeDescription
Content-TypeMStringapplication/json request body.
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
X-SIGNATUREMStringSignature of JSON body (see product Signature doc).
X-PARTNER-IDMStringYour merchantID

Body Parameters

FieldRequiredTypeDescription
orderNoMString(32)Merchant-unique id
purposeMString(64)Memo to payer
merchantMObjectWraps merchantId and optional sub-merchant fields.
    merchantIdMStringSmilepayz merchantId for this call.
    merchantNameOStringMerchant display name.
    subMerchantIdOStringSub-merchant ID.
    subMerchantNameOStringName for subMerchantId.
moneyMObjectCurrency plus amount for this transaction.
    currencyMStringFixed to IDR.
    amountMNumberAmount (integer only — no decimal point). See Money for decimal places
payerCObjectPayer object per region rules (see Payer model).
    phoneCStringBeneficiary phone in local format.
paymentMethodOStringSee Payment methods doc.
expiryPeriodONumberExpiryPeriod, default 3600.
redirectUrlOString(256)HTTPS post-pay return URL, max 256 chars.
callbackUrlOString(256)HTTPS async status URL, max 256 chars.

Example Body – Transaction Request:

Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00
X-SIGNATURE: 7MHd9v5/m9JeqmDZVwWBZUZ5J5...7120QnFEny7Qm7uQR1G0TWCh10fsU6nVxiRoeoQ==
X-PARTNER-ID: 20001

Responses

HTTP Request

FieldRequiredTypeDescription
Content-TypeMStringapplication/json request body.
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm

Body Parameters

FieldRequiredTypeDescription
codeMString00 success, other values error.
messageMStringUTF-8 human-readable result line.
orderNoMStringMerchant-unique id
tradeNoOStringSmilepayz tradeNo for this order.
merchantMObjectWraps merchantId and optional sub-merchant fields.
    merchantIdMStringSmilepayz merchantId for this call.
    merchantNameOStringMerchant display name.
    subMerchantIdOStringSub-merchant ID.
    subMerchantNameOStringName for subMerchantId.
moneyMObjectCurrency plus amount for this transaction.
    currencyMStringFixed to IDR.
    amountMNumberAmount (integer only — no decimal point). See Money for decimal places
transactionTimeMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
channelMObjectChannel payload (paymentUrl, qrString, …).
    paymentMethodOStringSee Payment methods doc.
    vaNumberOStringBank VA number.
    qrStringOStringPIX or channel copy-paste string if returned.
    paymentUrlMStringCashier URL to open for the payer.
statusOStringOrder or payment status enum value.
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00

Notification/Callback

Callback signature ≠ request signature

Do not verify callback X-SIGNATURE with the request-signing formula. See Callback Signature.

HTTP Request

FieldRequiredTypeDescription
Content-TypeMStringapplication/json request body.
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
X-SIGNATUREMStringSee Callback Signature

Body Parameters

FieldRequiredTypeDescription
orderNoMStringMerchant-unique id
tradeNoMStringSmilepayz tradeNo for this order.
merchantIdMStringSmilepayz merchantId for this call.
merchantNameMStringMerchant display name.
subMerchantIdOStringSub-merchant ID.
subMerchantNameOStringName for subMerchantId.
paymentMethodMStringSee Payment methods doc.
transactionTimeMStringFormat: yyyy-MM-ddTHH:mm:ss
statusMStringOrder or payment status enum value.
moneyMObjectCurrency plus amount for this transaction.
    currencyMStringFixed to IDR.
    amountMNumberAmount (integer only — no decimal point). See Money for decimal places
payerOObjectPayer object per region rules (see Payer model).

Return

Important

Respond with the string SUCCESS only.

{
    "orderNo": "2000102900000000000001",
    "tradeNo": "101200012410241325417215",
    "merchantId": "20001",
    "merchantName": "Smilepayz Demo Store",
    "subMerchantId": "",
    "subMerchantName": "",
    "paymentMethod": "QRIS",
    "transactionTime": "2024-12-17T10:55:00+07:00",
    "status": "SUCCESS",
    "money": {
        "currency": "IDR",
        "amount": 150000
    },
    "payer": {
        "name": "Budi Santoso",
        "phone": "6281234567890"
    }
}