Virtual Account SNAP

Update VA (SNAP)

Update Virtual Account via SNAP transfer-va service.

HTTPMethod: POST
URL: ${ROOT_URL}/v1.0/transfer-va/update-va
Service Code: 32
Version: 1.0
ServiceGroup: transfer-va
ProductType: update-va

Request Header

ParameterRequiredTypeLengthRemarks
Content-TypeMString-Fixed value application/json
AuthorizationCStringDynamicaccess_token; mandatory if using symmetric encryption
X-TIMESTAMPMString64Jakarta time, format 2021-11-29T09:22:18+07:00
X-PARTNER-IDMString36Merchant ID
X-EXTERNAL-IDMString12Request ID
X-SIGNATUREMStringDynamicSignature strings
X-IP-ADDRESSMString15Client IP (IPv4)
CHANNEL-IDMString5Fixed value 95221

Request Body

ParameterRequiredTypeLengthRemarks
partnerServiceIdStringM8Derivative of X-PARTNER-ID, similar to company code, 8 digit left padding space. 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
virtualAccountNameStringM255Payer name
virtualAccountEmailStringO255Email
virtualAccountPhoneStringO30Mobile phone, Format: 62xxxxxxxxxxxxx
trxIdStringO12Partner system transaction ID
virtualAccountTrxTypeStringO1Virtual Account Type
+additionalInfoObjectOunlimitedFrom Inquiry Response

Response Header

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

Response Body

ParameterRequiredTypeLengthRemarks
responseCodeStringM7HTTP status code + service code + case code
responseMessageStringM150Response description
+ virtualAccountDataObjectM
- partnerServiceIdStringM8Derivative of X-PARTNER-ID, similar to company code, 8 digit left padding space
- 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
- trxIdStringO64Partner system transaction ID
+ additionalInfoObjectOunlimitedFrom Inquiry Response

Request Body Example

POST /api/v1.0/transfer-va/update-va HTTP/1.1
Content-Type: application/json;charset=utf-8
X-TIMESTAMP: 2026-02-09T23:44:09.357+07:00
X-SIGNATURE: Cy3y********************jQ==
X-PARTNER-ID: 010001
X-EXTERNAL-ID: 20260210XXXXXXXXX
X-IP-ADDRESS: XXX.XXX.XXX.XXX
CHANNEL-ID: 95221

{
  "partnerServiceId": " 010001",
  "customerNo": "34534534",
  "virtualAccountNo": "856701XXXXXXXX",
  "virtualAccountName": "Jokul Doe",
  "virtualAccountEmail": "jokul@email.com",
  "virtualAccountPhone": "6281828384858",
  "trxId": "PYL20260210XXXXXXXXX",
  "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 Body Example

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

{
  "responseCode":"2002800",
  "responseMessage":"Successful",
  "virtualAccountData":
  {
    "partnerServiceId":" 010001",
    "customerNo":"34534534",
    "virtualAccountNo":"856701XXXXXXXX",
    "virtualAccountName":"Jokul Doe",
    "virtualAccountEmail":"jokul@email.com",
    "virtualAccountPhone":"6281828384858",
    "trxId":"PYL20260210XXXXXXXXX",
    "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"
    }
  }
}