Transaction History Detail API


This API is used to get merchant's transaction history detail

Path/{version}/transaction-history-detail
HTTP MethodPOST
Versionv1.0
SNAP Service Code13

Request Header

Field NameField TypeMandatoryField Description
Content-typeStringMMedia type of the resource, i.e. application/json
X-TIMESTAMPStringMClient’s current local time in ISO-8601 format
X-SIGNATUREStringMUnique identifier for partner
AuthorizationStringMRepresents access_token of a request; string starts with keyword “Bearer ” followed by access_token. Can get this token from Access Token B2B response
X-PARTNER-IDStringMUnique identifier for partner
X-EXTERNAL-IDStringMAlphanumeric string. Preferably UUID. Reference number that should be unique in the same day or 1 day idempotency key
CHANNEL-IDStringMDevice identification on which the API services are currently being accessed by the end user. Given by BI
Content-type: application/json
X-TIMESTAMP: 2020-12-18T15:34:40+07:00
X-SIGNATURE: 85be817c55b2c135157c7e89f52499bf0c25ad6eeebe04a986e8c862561b19a5
Authorization: Bearer gp9HjjEj813Y9JGoqwOeOPWbnt4CUpvIJbU1mMU4a11MNDZ7Sg5u9a
X-PARTNER-ID: 82150823919040624621823174737537
X-EXTERNAL-ID: 41807553358950093184162180797837
CHANNEL-ID: 95221

Request Body

Field NameField TypeMandatoryField Description
originalPartnerReferenceNoString(64)MTransaction identifier on service consumer system
additionalInfoObjectMAdditional information
additionalInfo.referenceNoString(64)MTransaction identifier on service provider system
{
  "originalPartnerReferenceNo": "2020102900000000000001",
  "additionalInfo": {
    "referenceNo": "2020102977770000000009"
  }
}

Response Header

Field NameField TypeMandatoryField Description
Content-typeStringMMedia type of the resource, i.e. application/json
X-TIMESTAMPStringMClient’s current local time in ISO-8601 format
Content-type: application/json
X-TIMESTAMP: 2020-12-18T15:34:40+07:00

Response Body

Field Name

Field Type

Mandatory

Field Description

responseCode

String(7)

M

Response code (HTTP status code + service code + case code)

responseMessage

String(150)

M

Response description

referenceNo

String(64)

M

Transaction identifier on service provider system

partnerReferenceNo

String(64)

M

Transaction identifier on service consumer system

dateTime

String(25)

M

Transaction created time in ISO-8601 format

amount

Object

M

Amount information

amount.value

String(16,2)

M

Net amount of the transaction

amount.currency

String(3)

M

Currency

remark

String(256)

O

Transaction remark (only applicable for Midtrans transaction type DISBURSEMENT)

status

String(32)

M

Transaction status (BI-SNAP)

type

String(32)

M

Transaction type (BI-SNAP)

additionalInfo

Object

O

Additional information

additionalInfo.status

String(32)

M

Transaction status (Midtrans). List of statuses can be referred here

additionalInfo.type

String(32)

M

Transaction type (Midtrans). List of types can be referred here

additionalInfo.updatedTime

String(25)

M

Transaction updated time in ISO-8601 format

additionalInfo.channel

String(100)

M

Transaction channel. List of channels can be referred here

additionalInfo.customerEmail

String(100)

O

Customer email

additionalInfo.accountNo

String(32)

O

Account number

additionalInfo.payment

Object

O

Payment related information

payment.expiryTime

String(25)

M

Payment expiry time in ISO-8601 format

payment.source

String(20)

M

Payment source. List of payment sources can be referred here

payment.cardNumber

String

O

Credit card number

payment.cardType

String

O

Credit card type

payment.cardChannelResponseCode

String

O

Credit card response code

payment.
cardChannelResponseMessage

String

O

Credit card response message

payment.issuingBrand

String

O

Credit card issuing brand

payment.issuingBank

String

O

Credit card issuing bank

payment.issuingCountryCode

String

O

Credit card issuing country code

payment.issuingCountryName

String

O

Credit card issuing country name

payment.acquiringBank

String

O

Credit card acquiring bank

payment.retrievalReferenceNumber

String

O

Credit card retrieval reference number

payment.fdsRecommendation

String

O

Credit card FDS recommendation

payment.creditCardSecure

String

O

Credit card secure

payment.bankMid

String

O

Credit card bank mid

payment.bankResponseCode

String

O

Credit card bank response code

payment.isOneClick

boolean

O

Credit card is one click

payment.isTwoClick

boolean

O

Credit card is two click

payment.installmentTerm

String

O

Credit card installment term

payment.installmentType

String

O

Credit card installment type

payment.redeemedPointsAmount

String

O

Credit card redeemed points amount

payment.redeemedPointsQuantity

String

O

Credit card redeemed points quantity

payment.networkTransactionId

String

O

Credit card network transaction id

payment.store

String

O

Convenient store name, i.e: indomaret, alfamart

payment.paymentCode

String

O

Convenient store payment code

payment.trackingRef

String

O

Convenient store tracking reference (only for Indomaret)

payment.agentTransactionId

String

O

Convenient store agent transaction id (only for Alfarmart)

payment.virtualAccountNumber

String

O

Virtual account number

payment.bcaVaChannel

String

O

Virtual account channel (only for BCA)

payment.bniVaType

String

O

Virtual account type, e.g: open_payment, fixed_payment (only for BNI)

payment.bniLeftAmount

String

O

Virtual account left amount (only for BNI)

payment.qrisOnUs

boolean

O

QRIS is on us

payment.qrisReferenceNumber

String

O

QRIS reference number

payment.qrisIssuer

String

O

QRIS issuer

payment.qrisIssuerTransactionId

String

O

QRIS issuer transaction id

payment.qrisAcquirer

String

O

QRIS acquirer

payment.qrisAcquirerTransactionId

String

O

QRIS acquirer transaction id

payment.gopaySource

String

O

GoPay source

payment.gopayPaymentOption

String

O

GoPay payment options

payment.merchantCrossReferenceId

String

O

GoPay unique ID per merchant as an identifier in tokenization activation

payment.mandiriBillKey

String

O

Mandiri Bill key

payment.mandiriBillChannelId

String

O

Mandiri Bill channel id

payment.mandiriBillInfos

Array of String

O

Mandiri Bill informations

payment.mandiriBillPaidBills

String

O

Mandiri Bill paid bills

payment.mandiriBillPaymentAmount

String

O

Mandiri Bill payment amount

payment.akulakuOrderId

String

O

Akulaku order id

payment.akulakuPeriods

String

O

Akulaku periods

payment.
akulakuMonthlyInstallmentPayment

String

O

Akulaku monthly installment payment

payment.kredivoTransactionId

String

O

Kredivo transaction id

payment.kredivoInstallmentTerm

String

O

Kredivo installment term

payment.shopeepayTransactionId

String

O

ShopeePay transaction id

payment.uobEzpayTransactionTime

String

O

UOB EZ Pay transaction time

payment.uobEzpayNotificationId

String

O

UOB EZ Pay notification id

payment.uobEzpayBankReference

String

O

UOB EZ Pay bank reference

payment.
cimbClicksReferenceNumber

String

O

CIMB Clicks reference number

payment.cimbClicksAuthCode

String

O

CIMB Clicks auth code

payment.
bcaKlikpayTransactionNumber

String

O

BCA KlikPay transaction number

payment.bcaKlikpayType

String

O

BCA KlikPay type

payment.
bcaKlikbcaTransactionNumber

String

O

KlikBCA transaction number

payment.bcaKlikbcaUserId

String

O

KlikBCA user id

payment.
briEpayPaymentReferenceNumber

String

O

e-Pay BRI payment reference number

payment.
briEpayBillReferenceNumber

String

O

e-Pay BRI bill reference number

payment.briEpayUserFullName

String

O

e-Pay BRI user full name

payment.mandiriEcashId

String

O

Mandiri e-Cash id

payment.mandiriEcashTraceNumber

String

O

Mandiri e-Cash trace number

payment.mandiriEcashPhoneNumber

String

O

Mandiri e-Cash phone number

payment.mandiriEcashDescription

String

O

Mandiri e-Cash description

payment.
danamonOnline
PaymentReferenceNumber

String

O

Danamon Online payment reference number

payment.
danamonOnlineBillReferenceNumber

String

O

Danamon Online bill reference number

payment.linkajaResultCode

String

O

LinkAja result code

payment.linkajaReferenceId

String

O

LinkAja reference id

payment.linkajaReceiptNumber

String

O

LinkAja receipt number

payment.
linkajaOriginatorConversationId

String

O

LinkAja originator conversation id

payment.linkajaConversationId

String

O

LinkAja conversation id

payment.dbsPaylahMessageId

String

O

LinkAja message id

payment.dbsPaylahReferenceId

String

O

DBS Paylah! reference id

payment.paypalTransactionId

String

O

PayPal transaction id

payment.refunds

Array of Object

O

Refunds information

refunds.id

String

O

Refund id

refunds.amount.value

String

O

Refund amount of the transaction

refunds.amount.currency

String

O

Refund currency

refunds.reason

String

O

Refund reason

refunds.createdTime

String(25)

O

Refund created time in in ISO-8601 format

refunds.bankConfirmedTime

String(25)

O

Refund bank confirmed time in in ISO-8601 format

refunds.cancelledTime

String(25)

O

Refund cancelled time in in ISO-8601 format

payment.customer

Object

O

Customer information

customer.firstName

String

O

Customer first name

customer.lastName

String

O

Customer last name

customer.email

String

O

Customer email

customer.phone

String

O

Customer phone

payment.shippingAddress

String

O

Shipping address information

shippingAddress.firstName

String

O

Shipping first name

shippingAddress.lastName

String

O

Shipping last name

shippingAddress.phone

String

O

Shipping phone

shippingAddress.postalCode

String

O

Shipping postalCode

shippingAddress.countryCode

String

O

Shipping postal code

shippingAddress.city

String

O

Shipping city

shippingAddress.address

String

O

Shipping address

payment.items

Array of Object

O

Items information

items.id

String

O

Item identifier on service provider system

items.partnerId

String

O

Item identifier on service consumer system

items.name

String

O

Item name

items.quantity

String

O

Item quantity

items.price.value

String

O

Item price

payment.promo

Object

O

Promo information

promo.id

String

O

Promo identifier

promo.code

String

O

Promo code

promo.name

String

O

Promo name

promo.sponsor

String

O

Promo sponsor

promo.originalAmount.value

String

O

Promo original amount

promo.discountAmount.value

String

O

Promo discountAmount

promo.userIp

String

O

User IP address when using the promo

additionalInfo.withdrawal

Object

O

Withdrawal related information

withdrawal.bankName

String

O

Withdrawal bank name

withdrawal.bankCode

String

O

Withdrawal bank code

withdrawal.accountNo

String

O

Withdrawal account number

withdrawal.accountName

String

O

Withdrawal account name

withdrawal.requestedTime

String

O

Withdrawal requested time in ISO-8601 format

withdrawal.successTime

String

O

Withdrawal success time in ISO-8601 format

withdrawal.failedTime

String

O

Withdrawal failed time in ISO-8601 format

withdrawal.cancelledTime

String

O

Withdrawal cancelled time in ISO-8601 format

additionalInfo.disbursement

Object

O

Disbursement related information

disbursement.sourceBankCode

String

O

Disbursement source bank code

disbursement.sourceAccountNo

String

O

Disbursement source account number

disbursement.beneficiaryEmail

String

O

Disbursement beneficiary email

disbursement.beneficiaryName

String

O

Disbursement beneficiary name

disbursement.beneficiaryBankCode

String

O

Disbursement beneficiary bank code

disbursement.beneficiaryBankName

String

O

Disbursement beneficiary bank name

disbursement.beneficiaryAccountNo

String

O

Disbursement beneficiary account number

disbursement.creatorEmail

String

O

Disbursement creator email

disbursement.creatorName

String

O

Disbursement creator name

disbursement.approverEmail

String

O

Disbursement approver email

disbursement.approverName

String

O

Disbursement approver name

disbursement.requestedTime

String(25)

O

Disbursement requested time in ISO-8601 format

disbursement.approvedTime

String(25)

O

Disbursement approved time in ISO-8601 format

disbursement.rejectedTime

String(25)

O

Disbursement rejected time in ISO-8601 format

disbursement.processedTime

String(25)

O

Disbursement processed time in ISO-8601 format

disbursement.completedTime

String(25)

O

Disbursement completed time in ISO-8601 format

disbursement.failedTime

String(25)

O

Disbursement failed time in ISO-8601 format

disbursement.failureMessage

String

O

Disbursement failure message

disbursement.failureCode

String

O

Disbursement failure code

additionalInfo.fee

Object

M

Fee information

fee.value

String(16,2)

M

Net amount of fee

fee.currency

String(3)

M

Currency

{
  "responseCode": "2001300",
  "responseMessage": "Success",
  "referenceNo": "2020102977770000000009",
  "partnerReferenceNo": "2020102900000000000001",
  "dateTime": "2019-07-03T12:08:56+07:00",
  "amount": {
    "value": "12345678.00",
    "currency": "IDR"
  },
  "remark": "Payment to Warung Ikan Bakar",
  "status": "SUCCESS",
  "type": "PAYMENT",
  "additionalInfo": {
    "status": "SETTLEMENT",
    "type": "PAYMENT",
    "updatedTime": "2019-07-03T12:08:56+07:00",
    "channel": "qris",
    "customerEmail": "[email protected]",
    "accountNo": "123456",
    "payment": {
      "expiryTime": "2019-07-03T12:08:56+07:00",
      "source": "SNAP",
      "providerReferenceId": "A120240108151754NxoeRNYP4YID",
      "approvalCode": "100127",
      
      // Credit Card
      "cardNumber": "4556 5579 **** 6624",
      "cardType": "credit",
      "cardChannel": "mti",
      "cardChannelResponseCode": "00",
      "cardChannelResponseMessage": "Approved",
      "issuingBrand": "VISA",
      "issuingBank": "bca",
      "issuingCountryCode": "US",
      "issuingCountryName": "UNITEDSTATES",
      "acquiringBank": "mandiri",
      "retrievalReferenceNumber": "736620222955",
      "fdsRecommendation": "accept",
      "creditCardSecure": true,
      "bankMid": "1100889977",
      "bankResponseCode": "00",
      "isOneClick": false,
      "isTwoClick": false,
      "installmentTerm": "",
      "installmentType": "",
      "redeemedPointsAmount": {
        "value": "5000.00",
        "currency": "IDR"
      },
      "redeemedPointsQuantity": "10",
      "networkTransactionId": "606345944234331",
      
      // Convenient Store
      "store": "indomaret",
      "paymentCode": "901083200026",
      "trackingRef": "82851212597196801", // indomaret
      "agentTransactionId": "cZkpKVCOibLOeEp", // alfamart
      
      // Bank Transfer / Virtual Account
      "virtualAccountNumber": "96883778474",
      "bcaVaChannel": "Internet Banking",
      "bniVaType": "open_payment",
      "bniLeftAmount": {
        "value": "-3.00",
        "currency": "IDR"
      },
        
      // QRIS
      "qrisOnUs": false,
      "qrisReferenceNumber": "A120240108151754NxoeRNYP4YID",
      "qrisIssuer": "gopay",
      "qrisIssuerTransactionId": "A120240108151754NxoeRNYP4YID",
      "qrisAcquirer": "gopay",
      "qrisAcquirerTransactionId": "A120240108151754NxoeRNYP4YID",
        
      // GoPay
      "gopaySource": "gopay_online",
      "gopayPaymentOption": "GOPAY_WALLET",
      "merchantCrossReferenceId": "760fbd7c-6720-4bb6-88f9-2a75ad8c1173",
      
      // Mandiri Bill
      "mandiriBillKey": "213916480962",
      "mandiriBillInfos": ["rizvi gopay"],
      "mandiriBillChannelId": "1234",
      "mandiriBillPaidBills": "01",
      "mandiriBillPaymentAmount": {
        "value": "10000.00",
        "currency": "IDR"
      },
      
      // Akulaku
      "akulakuOrderId": "A120240223061624q0ouIEgan1ID-1",
      "akulakuPeriods": "",
      "akulakuMonthlyInstallmentPayment": "5000",
      
      // Kredivo
      "kredivoTransactionId": "12a1c87c-74c9-4819-aa37-4f74acff9c07",
      "kredivoInstallmentTerm": "30_days",
      
      // ShopeePay
      "shopeepayTransactionId": "960774027066627564",
      
      // UOB EZ Pay
      "uobEzpayTransactionTime": "2019-07-03T12:08:56+07:00",
      "uobEzpayNotificationId": "asdfgh",
      "uobEzpayBankReference": "zxcvbn",
     
      // CIMB Clicks
      "cimbClicksReferenceNumber": "000000000000071969",
      "cimbClicksAuthCode": "1708428664718",
     
      // BCA KlikPay
      "bcaKlikpayTransactionNumber": "1693622",
      "bcaKlikpayType": "1",
      
      // KlikBCA
      "bcaKlikbcaTransactionNumber": "12078115af80447e97",
      "bcaKlikbcaUserId": "testuser01",
      
      // e-Pay BRI
      "briEpayPaymentReferenceNumber": "1696937935399",
      "briEpayBillReferenceNumber": "294634661",
      "briEpayUserFullName": "Midtrans",
      
      // Mandiri e-Cash
      "mandiriEcashId": "cf7989fe-1873-4ecd-a933-3c833a8b9f8b",
      "mandiriEcashTraceNumber": "xyzxyz",
      "mandiriEcashPhoneNumber": "0987654321",
      "mandiriEcashDescription": "Transaction Description",
      
      // Danamon Online
      "danamonOnlinePaymentReferenceNumber": "i1ji2X9Rzc19GR",
      "danamonOnlineBillReferenceNumber": "166526",
      
      // LinkAja
      "linkajaResultCode": "0",
      "linkajaReceiptNumber": "D5AF930801",
      "linkajaReferenceId": "test-order-1706005255",
      "linkajaOriginatorConversationId": "6310bd69-ddea-4550-a746-a6afce00a7ef",
      "linkajaConversationId": "01HMTXCNTGZNPHRZ6X4804VFAY",
      
      // DBS PayLah!
      "dbsPaylahReferenceId": "17086717018447aab035",
      "dbsPaylahMessageId": "a4-9c7c-05a98c507aab",
        
      // PayPal
      "paypalTransactionId": "qee0evgt",
      
      "refunds": [
        {
          "id": "12345",
          "amount": {
            "value": "5000.00",
            "currency": "IDR"
          },
          "reason": "need to refund",
          "createdTime": "2019-07-03T12:08:56+07:00",
          "bankConfirmedTime": "2019-07-03T12:08:56+07:00",
          "cancelledTime": "2019-07-03T12:08:56+07:00"
        }
      ],
      "customer": {
        "firstName": "John",
        "lastName": "Doe",
        "email": "[email protected]",
        "phone": "+62812131415"
      },
      "shippingAddress": {
        "firstName": "John",
        "lastName": "Doe",
        "phone": "+62812131415",
        "postalCode": "123456",
        "countryCode": "21",
        "city": "Jakarta",
        "address": "Pasaraya Blok M"
      },
      "items": [
        {
          "id": "2a17f5a2-4150-31db-9880-b10dd503c93d",
          "partnerId": "item001",
          "name": "Test item",
          "quantity": "1",
          "price": {
            "value": "10000.00",
            "currency": "IDR"
          }
        }
      ],
      "promo": {
        "id": "promo1",
        "code": "TESTPROMO",
        "name": "Promo buy 1 get 2",
        "sponsor": "Midtrans",
        "originalAmount": {
          "value": "25000.00",
          "currency": "IDR"
        },
        "discountAmount": {
          "value": "5000.00",
          "currency": "IDR"
        },
        "userIp": "10.128.20.227"
      }
    },
    "withdrawal": {
      "bankName": "PT. BANK MANDIRI (PERSERO) TBK.",
      "bankCode": "mandiri",
      "accountNo": "1111222233333",
      "accountName": "Mandiri Simulator A",
      "requestedTime": "2019-07-03T12:08:56+07:00",
      "successTime": "2019-07-03T12:08:56+07:00",
      "failedTime": "2019-07-03T12:08:56+07:00",
      "cancelledTime": "2019-07-03T12:08:56+07:00"
    },
    "disbursement": {
      "sourceBankCode": "bca",
      "sourceAccountNo": "4433221100",
      "beneficiaryEmail": "[email protected]",
      "beneficiaryName": "BCA Simulator A",
      "beneficiaryBankCode": "bca",
      "beneficiaryBankName": "PT. BANK CENTRAL ASIA TBK.",
      "beneficiaryAccountNo": "0011223344",
      "creatorEmail": "[email protected]",
      "creatorName": "MLA creator",
      "approverEmail": "[email protected]",
      "approverName": "MLA approver",
      "requestedTime": "2019-07-03T12:08:56+07:00",
      "approvedTime": "2019-07-03T12:08:56+07:00",
      "rejectedTime": "2019-07-03T12:08:56+07:00",
      "processedTime": "2019-07-03T12:08:56+07:00",
      "completedTime": "2019-07-03T12:08:56+07:00",
      "failedTime": "2019-07-03T12:08:56+07:00",
      "failureMessage": "invalid destination account number",
      "failureCode": "002"
    },
    "fee": {
      "value": "1000.00",
      "currency": "IDR"
    }
  }
}
{
  "responseCode": "4011200", 
  "responseMessage": "Unauthorized. Client"
}

List of Response Codes

Response CodeHTTP StatusDescription
2001300200Successful
4001301400Invalid field format {........}
4001302400Missing mandatory field {........}
4011300401Unauthorized signature
4011301401Access token invalid
4041301404Transaction not found
4091300409Cannot use same X-EXTERNAL-ID in same day
5001301500Unknown internal server failure, please retry the process again