Paylater by Indodana Finance
  • Homepage
  • Getting Started
    • Introduction
    • Preparation
  • Merchant Operations
    • Settlement Report
    • Merchant Dashboard
    • Getting Paid
    • Dispute Resolutions
    • Frequently Asked Questions (FAQ)
  • Marketing
    • Guideline and Compliance
  • API Reference
    • Online Transaction API
    • QuickPay Transaction API*
    • PoS Transaction API
  • Integration
    • Direct API Integration
    • QRIS API Integration
    • Integrate with E-commerce Plugins
    • Integrate with PHP SDK
  • Go-Live Preparation
    • Whitelist IP
    • Testing Credentials
    • UAT Integration
    • Developer Help
Powered by GitBook
On this page
  • API Flow Overview
  • HTTP Response Code
  • API Method References
  • PoS Checkout
  • Object Type References
  • items
  • 422-Error Debugging
  1. API Reference

PoS Transaction API

PreviousQuickPay Transaction API*NextDirect API Integration

Last updated 5 months ago

API Flow Overview

HTTP Response Code

All the APIs here are based on the HTTP request. The following are the response codes of an HTTP request that the Indodana Paylater API may response.

HTTP Response Code

Remarks

200

Everything work as expected

400

Bad request

401

Unauthorized

422

Validation Error

404

Not found

409

Conflict

429

Too many requests

50X

Server errors

API Method References

In this section, {base_url} will correspond to

https://sandbox01-offline.indodanafinance.co.id/api

https://offline.indodanafinance.co.id/api

PoS Checkout

POST https://base_url/public/v3/qr-checkout

* means the parameter is required

Request Body

Name
Type
Description

server_key*

string

Will be provided by Indodana for your integration.

amount*

number

Non negative value of grand total of customer's transaction

source*

string

Please send us static value of "QR" for now

order_id*

string

Unique order id of your transaction. Never use the same order_id twice or the request will be rejected.

sub_merchant_id*

string

Will be provided by Indodana for your integration.

push_uri*

string

Valid url. This will be used by Indodana to perform callback once the payment is complete.

items*

object

Array of JSON, consist of each customer's transaction details.

{
    "status": "OK",
    "qr_image": "https://indodana-qr-image.com/please/load/from/here",
    "raw_string_qr": "0002I101021226890015id.indodana.www01194fef0cca-6a76-11e9-02364fef0cca-6a76-11e9-a923-1681be663d3e03034fe5802ID5903wat62400136233c6099-bae1-11ec-9ca9-25e05126faf4"
    "transaction_id": "a7d2b836-c429-11eb-887a-b330815b2e37"
}
// sample request
{
    "server_key": "7F89lL7JIYKqX5UuPhg34lZWhoL54pFm",
    "amount": 95000,
    "source": "QR",
    "order_id": "9YUy8Z5s",
    "sub_merchant_id": "19cd5c6c-a24a-11e9-93c5-00163e013bb4",
    "push_uri": "https://your.url/any/path/is/ok",
    "items": [{
        "id": "001",
        "name": "Es Teh",
        "price": 10000,
        "type": "Drink",
        "quantity": 2
    }, {
        "id": "002",
        "name": "Nasi Goreng",
        "price": 25000,
        "type": "Food",
        "quantity": 3
    }]
}

Object Type References

items

Name

Type

Length

Remarks

id

string

64

Required. Item catalog identifier

name

string

128

Required. Item name

price

number

16,2

Required. Item price per quantity

type

string

64

Required. Item category type

quantity

number

5

Required. Total purchase quantity for this item

422-Error Debugging

check error.message in the response body, some required fields might not be provided in the request body.

  1. Check if the order_id is unique or not.

  2. The amount might not be supported for Indodana's Rate Policy such as the value is too small or too big.

  3. Contact Indodana's Developer

You can find our IP list .

Please follow this to learn about callback

here
doc