NAV
json

Change Log

Version Changes Author Date
1.0.0 First Documentation Yudhi K.S 5 September 2022
1.1.0
  • Move price and fee to product information field
  • Grouping left Navigation
  • Put more information at terminology
  • Yudhi K.S 9 November 2023
    1.2.0
  • Add PDAM product documentation
  • Add new error statuses
  • Yudhi K.S 9 Januari 2024
    1.3.0
  • Add PLN prepaid payment and inquiry
  • Yudhi K.S 16 Januari 2024
    1.4.0
  • Add Clients Callback Information
  • Jimmy Rengga 25 Januari 2024
    1.4.1
  • Remove ambiguity explanation in http response header code
  • Yudhi K.S 17 April 2024
    1.5.0
  • Add Redeem Voucher product documentation
  • Jimmy Rengga 13 Mei 2024
    1.5.1
  • Update callback 'x-rise-signature' description
  • Jimmy Rengga 21 Mei 2024
    1.5.2
  • Update Payment flow description
  • Jimmy Rengga 27 Mei 2024
    1.6.0
  • Add New StatusCode
  • Jimmy Rengga 29 Mei 2024
    1.7.0
  • Add Ewallet payment and inquiry
  • Jimmy Rengga 4 June 2024
    1.8.0
  • Add PKB, PBB, Telkomsel Omni product documentation
  • Introduce new schema in payment flow
  • Add new Error Code
  • Jimmy Rengga 16 Sept 2024
    1.9.0
  • Add E-Wallet Open Denom documentation
  • Jimmy Rengga 26 Nov 2024
    1.10.0
  • Add E-Money product documentation
  • Jimmy Rengga 12 Jun 2025
    1.11.0
  • Add Telco Postpaid documentation
  • Jimmy Rengga 25 Jun 2025
    1.12.0
  • Add BPJS Ketenagakerjaan PU & BPU documentations
  • Jimmy Rengga 4 Jul 2025
    1.13.0
  • Add Error Code for payment amount minimum limit and maximum limit
  • Jimmy Rengga 22 Jul 2025

    Terminology

    To make us easier to read this documentation we will use some of naming which mean to specific things.

    Terms Description
    Customer The client's customer using client application
    Client External party connected to RISE
    RISE RISE as the service provider fof client
    Provider The service provide by Provider's used by Customer
    Purchase Request RISE API Service used to buy products which not necessary to look into detail of customer
    Advice Request RISE API Service used to look detail information of previous transaction status
    Inquiry Request RISE API Service used to look detail information of specific customer by their id
    Payment Request RISE API Service used to pay for a product which Inquiry Request is mandatory to be executed in the first place
    Signature RISE used signature to verify if our request is not altered.
    Client's Passphrase Unique word given by client with 12 length characters contain the combination of a-z, A-Z and 0-9
    Client's Callback Endpoint Unique endpoint given by client to received message from RISE

    Protocol

    RISE will use HTTP/1.1 protocols for communication between client and our side.

    Message format

    Currently will support JSON format as the primary media type for request and response content.

    Authentication

    RISE will use OAuth2 for securing any request comming for Purchase, Payment, Inquiry and Advice transaction.

    Token Request

    Token Request example

    curl --location --request POST 'https://[thehostname]/global/oauth2/token' \
    --header 'Content-Type: application/x-www-form-urlencoded' \
    --data-urlencode 'client_id=<change_me>' \
    --data-urlencode 'client_secret=<change_me>' \
    --data-urlencode 'grant_type=client_credentials'
    

    Token Response example

    {
        "token_type": "bearer",
        "expires_in": 7200,
        "access_token": "SuvzfG8KtMQ8M2DGxnkosItuUIvFT96v"
    }
    
    

    Please use the following URL to request a token.

    URL Http Method
    https://[thehostname]/global/oauth2/token POST

    Form data encoded parameter list

    Form Parameter name Description
    client_id the authentication client id given by RISE
    client_secret unique string as a password given by RISE
    grant_type please use 'client_credentials' only

    Endpoint Request

    Endpoint request example

    curl --location --request POST 'https://[thehostname]/transaction/inquiry' \
    --header 'Authorization: Bearer SuvzfG8KtMQ8M2DGxnkosItuUIvFT96v'
    
    

    Every request to RISE Endpoint need also to submit OAuth2 token.

    Callback

    HTTP request from RISE to client used for final transaction status notification. In order to validate request from RISE, client need validate signature from RISE header request should the same as below approach.

    Callback Signature Mechanism

    RISE used SHA-1 hashing mechanism. The sequence to create signature will sequentially ordered as :

    for example :

    Description Value
    Client's Ref ID 1234567754
    RISE's Ref ID TRX175
    Client's Passphrase 4IVHHT05RKRL

    will generate :

    SHA-1(1234567754TRX1754IVHHT05RKRL)

    The Purchase flow

    Purchase Flow Sequence Diagram

    Purchase flow purpose is to handle any transaction which not required for the customer to see any detail information before doing transaction.

    For instance : Prepaid Pulsa and/or Data, E-Voucher, Redeem Voucher, etc.

    Depending whether the client support callback or not, we will initiate Callback after the transaction status finalized. If you haven't received the callback after certain period or you don't support callback, please use Advice API request to get the final transaction status. For Advice API Information please click this link

    The Purchase HTTP

    URL Http Method
    https://[thehostname]/transaction/purchase POST
    Header name Description
    Authorization Bearer {Generated Token from authentication}

    Purchase Request body fields

    Purchase Request body example

    {
      body : [
        {
          "id": "Client Reff Id",
          "customerInfo": {
            "customerId" : "Customer identification number for transaction"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client"
          }
        }
      ]
    }
    
    field description data type is mandatory length
    body the field to hold items array object true 1
    body.items the payload arrays array true >1
    body.items.id Client Reff Id String true 25 chars
    body.items.customerInfo.customerId Customer identification number for transaction String true 25 chars
    body.items.productInfo.code Product code given by RISE to Client String true 25 chars

    Purchase Response body fields

    Purchase Response body example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "001",
            "statusMessage" : "Pending"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    The Payment flow

    Payment Flow Sequence Diagram

    Payment flow is a transaction where your customer need to see their detail information to make sure they will pay the correct bill.

    For instance: Telco Postpaid, TV cable bill, Insurance, BPJS, PDAM, etc.

    The payment flow start with Inquiry API Request, by sending Customer ID to get detail information of the customer. After the customer checked whether that information already correct and confirm to pay it, you need to call the Payment API.

    Depending whether the client support callback or not, we will initiate Callback after the transaction status finalized. If you haven't received the callback after certain period or you don't support callback, please use Advice API request to get the final transaction status. For Advice API Information please click this link

    Inquiry HTTP

    URL Http Method
    https://[thehostname]/transaction/inquiry POST

    Please Refer to diagram below for more details about Inquiry Process

    Payment Activity Diagram

    Inquiry Request body fields

    Inquiry Request body example

    {
      body : [
        {
          "id": "Client Reff Id",
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "period" : "Customer's payment period (currently used for BPJS Kes And PBB)",
            "identityNumber": "Customer's ID Number (currently used for SAMSAT JATIM)",
            "machineNumber": "Customer's Vehicle Machine Number (currently used for SAMSAT JATIM)",
            "phoneNumber": "Customer's Phone Number (currently used for SAMSAT JATIM)",
            "email": "Customer's Email (currently used for SAMSAT JATIM)",
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Product Price (Mandatory when product type is open denom)"
          }
        }
      ]
    }
    
    field description data type is mandatory length
    body the field to hold items array object true 1
    body.items the payload arrays array true >1
    body.items.id Client Reff Id String true 25 chars
    body.items.customerInfo.customerId Customer identification number for transaction String true 25 chars
    body.items.customerInfo.period Customer's payment period (currently used for BPJS Kes) Numeric false 2 digits
    body.items.productInfo.code Product code given by RISE to Client String true 25 chars
    body.items.productInfo.price Product denom that client want to topup / bill Numeric true 10 chars

    Inquiry Response body fields

    Inquiry Response body example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "optionalId" : "Alternative customer Id given by provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "deviceId" : "Customer's device identification",
            "tokenNumber" : "The token belong to customer",
            "kwh" : "Customer'd kwh information",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",        
            "period" : "Customer's payment period",
            "standing" :"Customer's standing information",
            "branchCode" : "Customer's branch code",
            "branchName" : "Customer's branch name",
            "participantNumber" : "Total participant within the bill",
            "billPeriod" : "Customer's period with month and year",
            "billType" : "Type of customer's bill"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    

    The Inquiry Information will be vary between customer info field. Currenty here are the fields we currently available in order to show it to your customer later.

    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.optionalId Alternative customer Id given by provider String
    body.items.customerInfo.tariff Customer's tariff information String
    body.items.customerInfo.power Customer's power information String
    body.items.customerInfo.tokenNumber The token belong to customer String
    body.items.customerInfo.kwh Customer'd kwh information String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.branchCode Customer's branch code String
    body.items.customerInfo.branchName Customer's branch Name String
    body.items.customerInfo.participantNumber Total participant within the bill String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.billType Type of customer's bill String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction Fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    See below example for more detail implentation used by each product :

    Telco Postpaid Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "customerName": "Customer name given by Provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Telkomsel Omni Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "notes": "Package(s) name & description",
            "phoneNumber": "Subcription's phone number"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.notes Package name & description given by Provider String
    body.items.customerInfo.phoneNumber Subcription Phone Number String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Ewallet Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Prepaid Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "optionalId" : "Meter id at pln device"        
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.tariff Customer's tariff information String
    body.items.customerInfo.power Customer's power information String
    body.items.customerInfo.optionalId Meter id at pln device String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Postpaid Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "optionalId" : "Meter id at pln device",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.tariff Customer's tariff information String
    body.items.customerInfo.power Customer's power information String
    body.items.customerInfo.optionalId Meter id at pln device String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Nontaglis Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year",
            "billType" : "Type of customer's bill"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.billType Type of customer's bill String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client String
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Kesehatan Inquiry Response Body

    Inqury Response body for 'BPJS Kesehatan' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "serialNumber" : "Transaction receipt number given by provider",
            "customerName" : "Customer name information",
            "participantNumber" : "Total participant within the bill",
            "period" : "Customer's payment period"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.participantNumber Total participant within the bill String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (PU) Inquiry Response Body

    Inqury Response body for 'BPJS Ketenagakerjaan (PU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "bill" : "Customer's bill amount",
            "billPeriod" : "Customer's period with month and year",
            "companyName" : "Customer's Registered Company Name"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.companyName Customer's Registered Company Name String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (BPU) Inquiry Response Body

    Inqury Response body for 'BPJS Ketenagakerjaan (BPU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "period" : "Customer's payment period",
            "branchName" : "Customer's Registered Branch Name",
            "wage" : "Customer's Registered Wage",
            "program" : "Customer's Registered BPJS BPU Programs"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.branchName Customer's Registered Branch Name String
    body.items.customerInfo.wage Customer's Registered Wage String
    body.items.customerInfo.program Customer's Registered BPJS BPU Programs (Contains maybe more than 1) String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PDAM Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PBB Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "period" : "Customer's period with month and year",
            "address" : "Customer's address"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.address Customer's address String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PKB Inquiry Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "address" : "Customer's address",
            "manufactureDate" : "Registered Vehicle Manufacture Date Information",
            "chassisNumber" : "Registered Vehicle Chassis Number Information",
            "machineNumber" : "Registered Vehicle Machine Number Information",
            "color" : "Registered Vehicle Color",
            "taxPeriod" : "Registered Vehicle Tax Period",
            "ratificationNumber" : "Registered Ratification Number",
            "variety" : "Registered Vehicle Tax Period",
            "brand" : "Registered Vehicle Brand",
            "type" : "Registered Vehicle Type"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.address Customer's address String
    body.items.customerInfo.manufactureDate Registered Vehicle Manufacture Date Information String
    body.items.customerInfo.chassisNumber Registered Vehicle Chassis Number Information String
    body.items.customerInfo.machineNumber Registered Vehicle Machine Number Information String
    body.items.customerInfo.color Registered Vehicle Color String
    body.items.customerInfo.taxPeriod Registered Vehicle Tax Period String
    body.items.customerInfo.ratificationNumber Registered Ratification Number String
    body.items.customerInfo.variety Registered Vehicle Tax Period String
    body.items.customerInfo.brand Registered Vehicle Brand String
    body.items.customerInfo.type Registered Vehicle Type String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Payment HTTP

    URL Http Method
    https://[thehostname]/transaction/payment POST

    Payment Request body fields

    Payment Request body example

    {
      "header": {
        "entityMetadata": {
          "clientInfo": {
            "address": "Jalan M. Thamrin",
            "postalCode": "10310",
            "district": "Menteng",
            "city": "Jakarta Pusat",
            "storeId": "AAA123456",
            "coordinate": "-6.1948961,106.8222942"
          }
        }
      },
      "body" : [
        {
          "id": "Client Reff Id",
          "result" : {        
            "transactionId" : "transaction id given by RISE"
          }
        }
      ]
    }
    
    field description data type is mandatory length
    header the field to hold header items object false 1
    header.entityMetadata the field to hold header items object false 1
    header.entityMetadata.clientInfo the field to hold client information items object false 1
    header.entityMetadata.clientInfo.address the field to hold client's store address String false 1
    header.entityMetadata.clientInfo.postalCode the field to hold client's store postalCode String false 1
    header.entityMetadata.clientInfo.district the field to hold client's store district String false 1
    header.entityMetadata.clientInfo.city the field to hold client's store city String false 1
    header.entityMetadata.clientInfo.storeId the field to hold client's storeId String false 1
    header.entityMetadata.clientInfo.coordinate the field to hold client's store coordinate String false 1
    body the field to hold items array object true 1
    body.items the payload arrays array true >1
    body.items.id Client Reff Id String true 25 chars
    body.items.result.transactionId Transaction id given by RISE String false 25 chars

    Payment Response body fields

    Payment Response body example

    {
      body : [
        {
          "id": "Client Reff Id (generated by client)",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "optionalId" : "Alternative customer Id given by provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "deviceId" : "Customer's device identification",
            "tokenNumber" : "The token belong to customer",
            "kwh" : "Customer'd kwh information",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",        
            "period" : "Customer's payment period",
            "standing" :"Customer's standing information",
            "branchCode" : "Customer's branch code",
            "branchName" : "Customer's branch name",
            "participantNumber" : "Total participant within the bill",
            "billPeriod" : "Customer's period with month and year",
            "billType" : "Type of customer's bill"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client", 
            "fee" : "Transaction fee", 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    

    Below are the general fields used to express the information for payment response, scroll down more to see more spesific fields used by spesific product

    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.optionalId Alternative customer Id given by provider String
    body.items.customerInfo.tariff Customer's tariff information String
    body.items.customerInfo.power Customer's power information String
    body.items.customerInfo.tokenNumber The token belong to customer String
    body.items.customerInfo.kwh Customer'd kwh information String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.branchCode Customer's branch code String
    body.items.customerInfo.branchName Customer's branch Name String
    body.items.customerInfo.participantNumber Total participant within the bill String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.billType Type of customer's bill String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client String
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Telco Postpaid Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "customerName": "Customer name given by Provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Telkomsel Omni Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "notes": "Package(s) name & description",
            "phoneNumber": "Subcription's phone number"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.notes Package name & description given by Provider String
    body.items.customerInfo.phoneNumber Subcription Phone Number String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Ewallet Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Prepaid Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "optionalId" : "Meter id at pln device"        
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.tariff Customer's tariff information String
    body.items.customerInfo.power Customer's power information String
    body.items.customerInfo.optionalId Meter id at pln device String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Postpaid Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "optionalId" : "Meter id at pln device",
            "serialNumber" : "Reference Id from PLN",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"  
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.tariff The customer's tariff information String
    body.items.customerInfo.power The customer power information String
    body.items.customerInfo.bill the customer bill amount String
    body.items.customerInfo.penalty the customer penalty amount String
    body.items.customerInfo.optionalId Customer meter id String
    body.items.customerInfo.serialNumber Reference Id from PLN String
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Nontaglis Payment Response

    Payment Response body for 'PLN Nontaglis' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "optionalId" : "Customer meter id",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year",
            "billType" : "Type of customer's bill"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"  
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.optionalId Customer meter id String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.period customer payment period String
    body.items.customerInfo.bill the customer bill amount String
    body.items.customerInfo.penalty the customer penalty amount String
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.billType Type of customer's bill String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Kesehatan Payment Response Body

    Payment Response body for 'BPJS Kesehatan' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "serialNumber" : "Transaction receipt number given by provider",
            "customerName" : "Customer name information",
            "participantNumber" : "Total participant within the bill",
            "period" : "Customer's payment period"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.participantNumber Total participant within the bill String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (PU) Payment Response Body

    Payment Response body for 'BPJS Ketenagakerjaan (PU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "bill" : "Customer's bill amount",
            "billPeriod" : "Customer's period with month and year",
            "companyName" : "Customer's Registered Company Name"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.companyName Customer's Registered Company Name String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (BPU) Payment Response Body

    Payment Response body for 'BPJS Ketenagakerjaan (BPU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "period" : "Customer's payment period",
            "branchName" : "Customer's Registered Branch Name",
            "wage" : "Customer's Registered Wage",
            "program" : "Customer's Registered BPJS BPU Programs"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.branchName Customer's Registered Branch Name String
    body.items.customerInfo.wage Customer's Registered Wage String
    body.items.customerInfo.program Customer's Registered BPJS BPU Programs (Contains maybe more than 1) String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PDAM payment response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PBB Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "period" : "Customer's period with month and year",
            "address" : "Customer's address"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.address Customer's address String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PKB Payment Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "address" : "Customer's address",
            "manufactureDate" : "Registered Vehicle Manufacture Date Information",
            "chassisNumber" : "Registered Vehicle Chassis Number Information",
            "machineNumber" : "Registered Vehicle Machine Number Information",
            "color" : "Registered Vehicle Color",
            "taxPeriod" : "Registered Vehicle Tax Period",
            "ratificationNumber" : "Registered Ratification Number",
            "variety" : "Registered Vehicle Tax Period",
            "brand" : "Registered Vehicle Brand",
            "type" : "Registered Vehicle Type"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.address Customer's address String
    body.items.customerInfo.manufactureDate Registered Vehicle Manufacture Date Information String
    body.items.customerInfo.chassisNumber Registered Vehicle Chassis Number Information String
    body.items.customerInfo.machineNumber Registered Vehicle Machine Number Information String
    body.items.customerInfo.color Registered Vehicle Color String
    body.items.customerInfo.taxPeriod Registered Vehicle Tax Period String
    body.items.customerInfo.ratificationNumber Registered Ratification Number String
    body.items.customerInfo.variety Registered Vehicle Tax Period String
    body.items.customerInfo.brand Registered Vehicle Brand String
    body.items.customerInfo.type Registered Vehicle Type String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    The Advice Flow

    The Purpose of this flow is to get latest status updated from a transaction

    The Advice HTTP

    URL Http Method
    https://[thehostname]/transaction/advice POST
    Header name Description
    Authorization Bearer {Generated Token from authentication}

    Advice Request body fields

    Advice Request body example

    {
      body : [
        {
          "id": "Client Reff Id"
        }
      ]
    }
    
    field description data type is mandatory length
    body the field to hold items array object true 1
    body.items the payload arrays array true >1
    body.items.id Client Reff Id String true 25 chars

    Advice Response body fields

    Pulsa and Paket Data Advice Response Body

    Advice Response body for 'Pulsa' and 'Paket Data' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "serialNumber" : "Transaction receipt number given by provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    E-Money (Mandiri EMoney, Brizzi, BNI TapCash) Advice Response Body

    Advice Response body for 'E-Money' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "serialNumber" : "Transaction receipt number given by provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Telco Postpaid Advice Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "customerName": "Customer name given by Provider",
            "serialNumber" : "Transaction receipt number given by provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Telkomsel Omni Advice Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "bill" : "Bill",
            "notes": "Package(s) name & description",
            "phoneNumber": "Subcription's phone number"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Package bill given by Provider String
    body.items.customerInfo.notes Package name & description given by Provider String
    body.items.customerInfo.phoneNumber Subcription Phone Number String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Ewallet Advice Response Body

    Advice Response body for 'Ewallet' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name information",
            "serialNumber" : "Transaction receipt number given by provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    Redeem Voucher Advice Response Body

    Advice Response body for 'Redeem Voucher' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "serialNumber" : "Transaction receipt number given by provider",
            "tokenNumber" : "Redeemable Token value"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.tokenNumber Redeemable Token value String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Prepaid Advice Response Body

    Advice Response body for 'PLN Prepaid' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "serialNumber" : "Transaction receipt number given by provider",
            "optionalId" : "Meter id at pln device",
            "tariff" : "PLN tariff",
            "power" : "PLN power",
            "kwh" : "PLN kwh",
            "customerName" : "Customer name information",
            "tokenNumber" : "Token used to recharge your electricity device"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.optionalId Meter id at pln device String
    body.items.customerInfo.tariff PLN tariff String
    body.items.customerInfo.power PLN power String
    body.items.customerInfo.kwh PLN kwh String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.tokenNumber Token used to recharge your electricity device String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Postpaid Advice Response Body

    Advice Response body for 'PLN Postpaid' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "tariff" : "Customer's tariff information",
            "power" : "Customer's power information",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "optionalId" : "Meter id at pln device",
            "serialNumber" : "Reference Id from PLN",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"  
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.tariff The customer's tariff information String
    body.items.customerInfo.power The customer power information String
    body.items.customerInfo.bill the customer bill amount String
    body.items.customerInfo.penalty the customer penalty amount String
    body.items.customerInfo.optionalId Customer meter id String
    body.items.customerInfo.serialNumber Reference Id from PLN String
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PLN Nontaglis Advice Response

    Advice Response body for 'PLN Nontaglis' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "optionalId" : "Customer meter id",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year",        
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"  
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.optionalId Customer meter id String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.period customer payment period String
    body.items.customerInfo.bill the customer bill amount String
    body.items.customerInfo.penalty the customer penalty amount String
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Kesehatan Advice Response Body

    Advice Response body for 'BPJS Kesehatan' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "serialNumber" : "Transaction receipt number given by provider",
            "customerName" : "Customer name information",
            "participantNumber" : "Total participant within the bill",
            "period" : "Customer's payment period"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.participantNumber Total participant within the bill String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (PU) Advice Response Body

    Advice Response body for 'BPJS Ketenagakerjaan (PU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "bill" : "Customer's bill amount",
            "billPeriod" : "Customer's period with month and year",
            "companyName" : "Customer's Registered Company Name",
            "serialNumber" : "Transaction receipt number given by provider"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.companyName Customer's Registered Company Name String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    BPJS Ketenagakerjaan (BPU) Payment Response Body

    Payment Response body for 'BPJS Ketenagakerjaan (BPU)' product example

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "See status code table",
            "statusMessage" : "See status code table"
          },
          "customerInfo": {
            "customerId" : "Customer va number or id",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "period" : "Customer's payment period",
            "branchName" : "Customer's Registered Branch Name",
            "participantNumber" : "Customer's Participant Number",
            "serialNumber" : "Transaction receipt number given by provider",
            "address" : "Customer's Registered Address",
            "branchAddress" : "Customer's Registered Branch Address",
            "wage" : "Customer's Registered Wage",
            "program" : "Customer's Registered BPJS BPU Programs",
            "birthDate": "Customer's Registered Birth Date",
            "programPeriod" : "Customer's Registered BPJS BPU Programs"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee" 
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body the field to hold items array object
    body.items the payload arrays array
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name information String
    body.items.customerInfo.bill Customer's bill amount String
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.branchName Customer's Registered Branch Name String
    body.items.customerInfo.participantNumber Customer's Registered Participant Number String
    body.items.customerInfo.serialNumber Transaction receipt number given by provider String
    body.items.customerInfo.address Customer's Registered address String
    body.items.customerInfo.branchAddress Customer's Registered Branch Address String
    body.items.customerInfo.wage Customer's Registered Wage String
    body.items.customerInfo.program Customer's Registered BPJS BPU Programs (Contains maybe more than 1) String
    body.items.customerInfo.birthDate Customer's Registered Birth Date String
    body.items.customerInfo.programPeriod Customer's Registered Customer's Registered BPJS BPU Programs (Contains maybe more than 1) String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PDAM Advice Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "standing" : "Customer's standing information",
            "billPeriod" : "Customer's period with month and year",
            "serialNumber" : "Reference Id from PDAM"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.standing Customer's standing information String
    body.items.customerInfo.billPeriod Customer's period with month and year String
    body.items.customerInfo.serialNumber Reference Id from PDAM String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PBB Advice Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "period" : "Customer's period with month and year",
            "address" : "Customer's address"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.period Customer's payment period Numeric
    body.items.customerInfo.address Customer's address String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    PKB Advice Response

    {
      body : [
        {
          "id": "Client Reff Id",
          "result" : {
            "success" : true/false,
            "transactionId" : "transaction id given by RISE",
            "statusCode" : "see status code section",
            "statusMessage" : "description of the status code"
          },
          "customerInfo": {
            "customerId" : "Customer identification number for transaction",
            "customerName" : "Customer name given by Provider",
            "bill" : "Customer's bill amount",
            "penalty" : "Customer's penalty amount",
            "address" : "Customer's address",
            "manufactureDate" : "Registered Vehicle Manufacture Date Information",
            "chassisNumber" : "Registered Vehicle Chassis Number Information",
            "machineNumber" : "Registered Vehicle Machine Number Information",
            "color" : "Registered Vehicle Color",
            "taxPeriod" : "Registered Vehicle Tax Period",
            "ratificationNumber" : "Registered Ratification Number",
            "variety" : "Registered Vehicle Tax Period",
            "brand" : "Registered Vehicle Brand",
            "type" : "Registered Vehicle Type"
          },
          "productInfo": {
            "code" : "Product code given by RISE to Client",
            "price" : "Latest price given by RISE to Client",
            "name" : "Product Named given by RISE to Client",
            "fee" : "Transaction fee"
          },
          "financialInfo": {
            "reservedBalance" : "Total Amount that being reserved for all pending transaction",
            "availableBalance" : "Total Amount that available for transaction"
          }
        }
      ]
    }
    
    field description data type
    body.items.id Client Reff Id String
    body.items.result.success Simple sign for purchase status boolean
    body.items.result.transactionId Transaction id given by RISE String
    body.items.result.statusCode See the status code section String
    body.items.result.statusMessage Description of the status code String
    body.items.customerInfo.customerId Customer identification Number for Transaction String
    body.items.customerInfo.customerName Customer name given by Provider String
    body.items.customerInfo.bill Customer's bill amount Numeric
    body.items.customerInfo.penalty Customer's penalty amount Numeric
    body.items.customerInfo.address Customer's address String
    body.items.customerInfo.manufactureDate Registered Vehicle Manufacture Date Information String
    body.items.customerInfo.chassisNumber Registered Vehicle Chassis Number Information String
    body.items.customerInfo.machineNumber Registered Vehicle Machine Number Information String
    body.items.customerInfo.color Registered Vehicle Color String
    body.items.customerInfo.taxPeriod Registered Vehicle Tax Period String
    body.items.customerInfo.ratificationNumber Registered Ratification Number String
    body.items.customerInfo.variety Registered Vehicle Tax Period String
    body.items.customerInfo.brand Registered Vehicle Brand String
    body.items.customerInfo.type Registered Vehicle Type String
    body.items.productInfo.code Product code given by RISE to Client String
    body.items.productInfo.price Latest price given by RISE to Client Numeric
    body.items.productInfo.name Product Named given by RISE to Client String
    body.items.productInfo.fee Transaction fee Numeric
    body.items.financialInfo.reservedBalance Total Amount that being reserved for all pending transaction Numeric
    body.items.financialInfo.availableBalance Total Amount that available for transaction Numeric

    The Callback Flow

    Purchase Flow Sequence Diagram

    Callback flow purpose is to notify final status updated from a transaction via registered client's callback endpoint.

    For instance : Purchase & Payment product(s) flow.

    RISE will only send One (1) Callback Request per transaction to notify the final status of the transaction to our client. If the client have problem receiving the message or having problem after received the message, client can use the advice flow to get the transaction status.

    Callback HTTP

    URL Http Method
    [registered client's callback endpoint] POST
    Http Header description data type
    x-rise-process-id RISE's ProcessId for current callback call String
    x-rise-signature RISE's signature value, Provides a way to verify the authentication and integrity of Callback requests, by ensuring that they have not been tempered with and have come from RISE. Client should be compare RISE's signature value with their own calculated signature. For the detail about RISE's Signature calculation, see link String

    Http Request Body : Body content will depend on the transaction product as same as advice's body content, see link

    Statuses and Error Handling

    RISE will give one of the following status codes during every API call:

    result.success Value result.statusCode Value result.statusMessage Value Mark Transaction Status as Notes
    True 000 Success Success No need further action
    False 001 Pending Pending Create advice request for getting updated transaction status
    False 002 Failed Failed No need further action
    False 003 Bad Message format Failed Double check request header and/or message format with the API Doc
    False 004 Duplicate Client Reference Id Failed Client Ref Id needs to be unique, double check whether the Client Ref Id already used or not. Create advice request to check if previous transaction exist or not
    False 005 Misconfigured clientId Failed Please contact our support, there is a missconfigured mapping for your client (usually happened only during integration testing)
    False 008 Transaction not found Failed Retry/Create a new transaction request if needed
    False 009 Insufficient fund Failed Please contact Support
    False 010 Link down Pending Please contact Support
    False 011 Invalid amount Failed Validate the amount
    False 012 Product not found Failed Please contact Support
    False 013 Invalid customer Id Failed No need further action
    False 014 Invalid Payment Request Failed No Inquiry found for transaction
    False 015 Paid Failed No need further action
    False 016 Invalid Inquiry Request Failed No need further action
    False 017 Limit Exceeded Failed The transaction failed because the customer already reach certain threshold for that product. Depending on the product, the customer can retry with smaller amount or wait for certain period.
    False 018 Expired Inquiry Failed The transaction failed because the customer trying to do payment for a expired inquiry result. Client can do re-inquiry and do payment for the last inquiry result.
    False 019 Invalid amount purchase, less than minimum limit. Failed The requested transaction failed because the entered amount is below the specified minimum limit.
    False 020 Invalid amount purchase, more than maximum limit. Failed The requested transaction failed because the entered amount is above the specified maximum limit.

    Other than those Status Code above (for example HTTP Header Status Code not 200, timeout, unparseable message format, unknown/undefined status code), all transaction must be marked as Pending, where Client need to do advice request to get the current transaction status.

    Advice Interval :
    · The First Advice can be done at minimum 1 minute after the related payment/purchase request
    · The Second Advice and onwards can be done at minimum 5 minute after previous advice request
    · If the transaction already being pending for at least 1 hour, please contact Support

    Avoid creating a new transaction request with a different Client Reference ID if the status of the original request is anything other than "Failed".

    Please contact us if you have questions about Status Code and other request/transactions behaviour condition