Langsung ke konten utama

Pembayaran masuk (Pay-In)

smilepayz teamsSekitar 3 menit

Pay-in merchant Indonesia: bank, QRIS, dompet, kartu, dll.

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
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
X-SIGNATUREMStringRequest signature; Signature Generation.
X-PARTNER-IDMStringmerchantID (alphanumeric).

Body Parameters

FieldRequiredTypeDescription
orderNoMString(32)6–32 alphanumeric; unique per merchant.
purposeMString(64)UTF-8; length 1–64.
merchantMObjectMerchant routing and settlement.
    merchantIdMStringPlatform merchant ID.
    merchantNameOStringUTF-8 display name (cashier / records).
    subMerchantIdOStringSub-merchant ID (multi-level).
    subMerchantNameOStringSub-merchant name (UTF-8).
moneyMObjectAmount and currency.
    currencyMStringIDR only.
    amountMNumberInteger minor units (20000 = IDR 20000).
payerCObjectRequired for some channels (e.g. OVO).
    phoneCStringE.164 mobile; required if paymentMethod is OVO.
paymentMethodOString(QRIS, W_DANA, …) omit → method picker.
expiryPeriodONumberSession TTL (s); default 3600; range 300–86400.
redirectUrlOString(256)Post-pay redirect URL; HTTP(S); max 256.
callbackUrlOString(256)Status webhook URL; HTTP(S); max 256.

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
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm

Body Parameters

FieldRequiredTypeDescription
codeMString00 = success; other codes = error.
messageMStringResult text (UTF-8).
orderNoMStringEcho of orderNo.
tradeNoOStringPlatform trade ID.
merchantMObjectMerchant Model.
    merchantIdMStringMerchant ID.
    merchantNameOStringDisplay name.
    subMerchantIdOStringSub-merchant ID.
    subMerchantNameOStringSub-merchant name.
moneyMObjectMoney Model.
    currencyMStringIDR.
    amountMNumberInteger minors.
transactionTimeMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
channelMObjectChannel Model.
    paymentMethodOStringChannel code.
    vaNumberOStringBank VA number.
    qrStringOStringQRIS string or QR image URL.
    paymentUrlMStringCashier URL.
statusOStringStatus Model.
Content-type: application/json
X-TIMESTAMP: 2020-12-17T10:55:00+07:00

Notification/Callback

HTTP Request

FieldRequiredTypeDescription
Content-TypeMStringapplication/json
X-TIMESTAMPMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
X-SIGNATUREMStringCallback signature; verify.

Body Parameters

FieldRequiredTypeDescription
orderNoMStringSame orderNo as pay-in.
tradeNoMStringPlatform tradeNo.
merchantIdMStringMerchant ID.
merchantNameMStringDisplay name.
subMerchantIdOStringSub-merchant ID.
subMerchantNameOStringSub-merchant name.
paymentMethodMStringSettled channel (BCA, QRIS, …).
transactionTimeMStringFormat: yyyy-MM-ddTHH:mm:ss±HH:mm
statusMStringStatus Model.
moneyMObjectFinal amount (fees may apply); Money Model.
    currencyMStringIDR.
    amountMNumberInteger minors.
payerOObjectPayer Model.

Return

Penting

Balas hanya dengan string SUCCESS.

{
  "orderNo": "2000102900000000000001",
  "tradeNo": "101200012410241325417215",
  "merchantId": "20001",
  "merchantName": "test",
  "subMerchantId": "",
  "subMerchantName": "",
  "paymentMethod": "QRIS",
  "transactionTime": "2024-12-17T10:55:00",
  "money": {
    "currency": "IDR",
    "amount": 100000
  },
  "status": "SUCCESS",
  "payer": {
    "name": "name",
    "phone": "08123456778"
  }
}