Virtual Account SNAP

Update Virtual Account

Panduan lengkap untuk memperbarui Virtual Account menggunakan API Paylabs.

HTTPMethod: POST

URL: ${ROOT_URL}/v1.0/transfer-va/update-va

Service Code: 28

Version: 1.0

ServiceGroup: transfer-va

ProductType: update-va

Request

ParameterRequiredTypeLengthRemarks
Content-TypeMString-Fixed value application/json
AuthorizationCStringDynamicNilai access_token, jika Anda menggunakan enkripsi symmetric, kolom ini wajib diisi
X-TIMESTAMPMString64Waktu Jakarta, format 2021-11-29T09:22:18+07:00
X-PARTNER-IDMString36Merchant ID
X-EXTERNAL-IDMString12Request ID
X-SIGNATUREMStringDynamicSignature strings
X-IP-ADDRESSMString15IP Client (IPv4)

Body

ParameterRequiredTypeLengthRemarks
partnerServiceIdStringM8turunan X-PARTNER-ID, mirip dengan kode perusahaan, 8 digit spasi disebelah kiri. partnerServiceId + customerNo or virtualAccountNo
customerNoStringM20No Unique (up to 20 digits). partnerServiceId + customerNo or virtualAccountNo
virtualAccountNoStringM28partnerServiceId (8 digit spasi disebelah kiri) + customerNo (up to 20 digits). partnerServiceId + customerNo or virtualAccountNo
virtualAccountNameStringM255Nama Customer. contoh: Jokul Doe
virtualAccountEmailStringO255Email Customer
virtualAccountPhoneStringO30No HP Customer Format: 62xxxxxxxxxxxxx
trxIdStringM64Transaction ID in Partner system
+ totalAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount.Total Amount dengan 2 digit dibelakang koma.
- CurrencyStringM3Currency.Currency of amount based on ISO 4217.
+ billDetailsArray of ObjectsOArray dengan maksimal 24 Object
- billCodeStringO2Kode tagihan untuk Customer pilih
- billNoStringO18Bill No dari Partner
- billNameStringO20Bill Nama
- billShortNameStringO10Bill Name to shown to
+ billDescriptionObjectODeskripsi Tagihan
- englishStringO18Deskripsi Tagihan dalam English
- indonesiaStringO18Deskripsi Tagihan Bahasa Indonesia
- billSubCompanyStringO5Kode Product Partner
+ billAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount.Nominal yang diinput oleh Nasabah dengan 2 digit angka dibelakang koma. contoh: 10000.00
- CurrencyStringM3Mata Uang. fixed value : IDR
+ additionalInfoObjectOunlimitedInformasi Tambahan untuk customer khusus untuk setiap tagihan
+ freeTextsArray of ObjectsOArray dengan maksimal 25 Object
- englishStringO32Akan ditampilkan di Channel
- indonesiaStringO32Akan ditampilkan di Channel
virtualAccountTrxTypeStringO1Type Virtual Account
+ feeAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount. Nominal yang diinput oleh Nasabah dengan 2 digit angka dibelakang koma. contoh: 10000.00
- CurrencyStringM3Mata Uang. fixed value : IDR
expiredDateStringO25Tanggal kadaluwarsa Virtual Account. ISO-8601
+ additionalInfoObjectOInformasi Tambahan untuk digunakan customer

Example

POST /api/v1.0/transfer-va/update-va HTTP/1.1
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2026-02-09T10:23:32.292+07:00
X-SIGNATURE: h06d********************jg==
X-PARTNER-ID: 010552
X-EXTERNAL-ID: 20260209172332292
X-IP-ADDRESS: XXX.XXX.XXX.XXX

{
  "partnerServiceId": " 010001",
  "customerNo": "34534534",
  "virtualAccountNo": "8903908967530380",
  "virtualAccountName": "Jokul Doe",
  "virtualAccountEmail": "jokul@email.com",
  "virtualAccountPhone": "6281828384858",
  "trxId": "PYL20260209172332292",
  "totalAmount": {
    "value": "15000.00",
    "currency": "IDR"
  },
  "billDetails": [
  {
  "billCode": "01",
  "billNo": "123456789012345678",
  "billName": "Bill A for Jan",
  "billShortName": "Bill A",
  "billDescription": {
    "english": "Maintenance",
    "indonesia": "Pemeliharaan"
  },
  "billSubCompany": "00001",
  "billAmount": {
    "value": "15000.00",
    "currency": "IDR"
  },
  "additionalInfo": {}
  }
  ],
  "freeTexts": [
  {
  "english": "Free text",
  "indonesia": "Tulisan bebas"
  }
  ],
  "virtualAccountTrxType": "1",
  "feeAmount": {
    "value": "0.00",
    "currency": "IDR"
  },
  "expiredDate": "2026-03-29T23:59:59-07:00",
  "additionalInfo": {
    "deviceId": "12345679237",
    "channel": "mobilephone",
    "paymentType": "MandiriVA"
  }
}

Response

Header

ParameterRequiredTypeLengthRemarks
Content-TypeMString-Fixed value application/json
X-TIMESTAMPMString64Jakarta time, format 2021-11-29T09:22:18+07:00

Body

ParameterRequiredTypeLengthRemarks
responseCodeStringM7Response Code
responseMessageStringM150Response Description
+ virtualAccountDataObjectM
- partnerServiceIdStringM8turunan X-PARTNER-ID, mirip dengan kode perusahaan, 8 digit spasi disebelah kiri. partnerServiceId + customerNo or virtualAccountNo
- customerNoStringM20Unique number (up to 20 digits). partnerServiceId + customerNo or virtualAccountNo
- virtualAccountNoStringM28partnerServiceId (8 digit left padding space) + customerNo (up to 20 digits). partnerServiceId + customerNo or virtualAccountNo
- virtualAccountNameStringM255Nama Customer. contoh: Jokul Doe
- virtualAccountEmailStringO255Email Customer
- virtualAccountPhoneStringO30No HP Customer Format: 62xxxxxxxxxxxxx
- trxIdStringM32Transaction ID in Partner system
+ totalAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount.Bill Amount dengan 2 digit angka dibelakang koma.
- CurrencyStringM3Mata Uang. ISO 4217.
+ billDetailsArray of ObjectsOArray dengan maksimal 24 Object
- billCodeStringO2Kode tagihan untuk Customer pilih
- billNoStringO18Bill No dari Partner
- billNameStringO20Bill Nama
- billShortNameStringO10Bill Name to shown to
+ billDescriptionObjectODeskripsi Tagihan
- englishStringO18Deskripsi Tagihan dalam Inggris
- indonesiaStringO18Deskripsi Tagihan dalam bahasa Indonesia
- billSubCompanyStringO5Kode Product Partner
+ billAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount.Nominal yang diinput oleh Nasabah dengan 2 digit angka dibelakang koma. contoh: 10000.00
- CurrencyStringM3Mata Uang. fixed value : IDR
+ additionalInfoObjectOunlimitedInformasi Tambahan untuk customer khusus untuk setiap tagihan
- virtualAccountTrxTypeStringO1Type Virtual Account
+ feeAmountObjectO
- ValueString (ISO4217)M16,2Transaction Amount.Nominal yang diinput oleh Nasabah dengan 2 digit angka dibelakang koma. contoh: 10000.00
- CurrencyStringM3Mata Uang. fixed value : IDR
- expiredDateStringO25Tanggal kadaluwarsa Virtual Account. ISO-8601
- lastUpdateDateStringO25Last update date for Virtual Account.ISO-8601
- paymentDateStringO25tanggal pembayaran Virtual Account.ISO-8601
+ additionalInfoObjectOInformasi Tambahan untuk digunakan customer

Example

HTTP/1.1 200 OK
Content-Type: application/json

{
  "responseCode": "2002800",
  "responseMessage": "Successful",
  "virtualAccountData": {
    "partnerServiceId": "  010001",
    "customerNo": "34534534",
    "virtualAccountNo": "8903908967530380",
    "virtualAccountName": "Jokul Doe",
    "virtualAccountEmail": "jokul@email.com",
    "virtualAccountPhone": "6281828384858",
    "trxId": "PYL20260209172332292",
    "totalAmount": {
      "value": "15000.00",
      "currency": "IDR"
    },
    "billDetails": [
      {
        "billCode": "01",
        "billNo": "123456789012345678",
        "billName": "Bill A for Jan",
        "billShortName": "Bill A",
        "billDescription": {
          "english": "Maintenance",
          "indonesia": "Pemeliharaan"
        },
        "billSubCompany": "00001",
        "billAmount": {
          "value": "15000.00",
          "currency": "IDR"
        },
        "additionalInfo": {}
      }
    ],
    "virtualAccountTrxType": "1",
    "feeAmount": {
      "value": "0.00",
      "currency": "IDR"
    },
    "expiredDate": "2026-03-29T23:59:59-07:00",
    "additionalInfo": {
      "deviceId": "12345679237",
      "channel": "mobilephone",
      "paymentType": "MandiriVA"
    }
  }
}