NAV
bash php

Persiapan

Selamat Datang di API Moota!

Dengan Moota, cek Mutasi jadi mudah.

Base URL dan Autentikasi

API Base URL: https://app.moota.co/

Setiap Endpoint hanya bisa diakses jika Anda mengirimkan Header sebagai berikut:

Header Value
Accept application/json
Authorization Bearer {api_token}

Token bisa Anda dapatkan di halaman Settings web Moota.

Endpoints

Menampilkan Profil

Bisa digunakan untuk melihat detail profil Anda.

Contoh request:

curl "https://app.moota.co/api/v1/profile" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/profile');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "name": "Abah Miranta",
    "email": "abahmiranta@gmail.com",
    "address": null,
    "city": "KOTA BANDUNG",
    "join_at": "2017-07-01 01:01:01"
}

HTTP Request

GET api/v1/profile

Response

JSON Attribute Data Type Deskripsi
name String Nama pemilik Akun.
email String Email akun.
address String Alamat Anda, akan bernilai null jika belum diubah.
city String Kota pemilik akun, akan bernilai null jika belum diubah.
join_at Timestamp Tanggal akun didaftarkan di Moota.

Menampilkan Saldo User

Bisa digunakan untuk melihat Saldo yang dimiliki oleh Anda (sebelum dipotong tagihan).

Contoh request:

curl "https://app.moota.co/api/v1/balance" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/balance');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "balance": 110000,
    "bill": 15000
}

HTTP Request

GET api/v1/balance

Response

JSON Attribute Data Type Deskripsi
balance Integer Saldo yang Anda miliki.
bill Integer Tagihan yang Anda miliki.

Daftar Akun Bank

Bisa digunakan untuk melihat semua Bank yang Anda miliki. Response JSON sudah mendukung Pagination, sehingga jika data Bank Anda lebih dari 15, anda bisa menambahkan ?page=2 dibelakang endpoint untuk mengetahui result di page 2 dan seterusnya. Atau Anda bisa melihat di next_page_url untuk halaman berikutnya dan prev_page_url untuk mengetahui URL halaman sebelumnya

Contoh request:

curl "https://app.moota.co/api/v1/bank" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "total": 1,
    "per_page": 15,
    "current_page": 1,
    "last_page": 1,
    "next_page_url": null,
    "prev_page_url": null,
    "from": 1,
    "to": 1,
    "data": [
        {
            "username": "abahmiranta1234",
            "atas_nama": "Abah Miranta",
            "account_number": "12341234",
            "bank_type": "bca",
            "is_active": 1,
            "created_at": "2017-06-09 16:17:36",
            "bank_id": "xxxx"
        }
    ]
}

HTTP Request

GET api/v1/bank

Response

JSON Attribute Data Type Deskripsi
username String Username akun Internet Banking Anda.
atas_nama String Nama Pemilik rekening Akun Bank.
account_number String Nomor rekening Akun Bank.
bank_type String Nama Bank, misal: bca, mandiri, bri.
is_active Integer Kolom is_active menunjukan status Bank Anda, jika 1 berarti sedang Aktif sedangkan 0 berarti sedang Non-Aktif/Stop.
created_at Timestamp Waktu penambahan Akun Bank di Moota.
bank_id String ID Bank Anda, bisa digunakan untuk cek mutasi via API.

Detail Akun Bank

Digunakan untuk melihat Detail Bank

Contoh request:

curl "https://app.moota.co/api/v1/bank/{bank_id}" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank/{bank_id}');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "username": "abahmiranta1234",
    "atas_nama": "Abah Miranta",
    "account_number": "12341234",
    "bank_type": "bca",
    "is_active": 1,
    "created_at": "2017-06-09 16:17:36",
    "bank_id": "xxxx"
}

HTTP Request

GET api/v1/bank/{bank_id}

GET Parameter

Parameter Deskripsi
{bank_id} ID Akun Bank anda. Untuk mendapatkan ID, silahkan akses ENDPOINT api/v1/bank terlebih dahulu.

Response

JSON Attribute Data Type Deskripsi
username String Username akun Internet Banking Anda.
atas_nama String Nama Pemilik rekening Akun Bank.
account_number String Nomor rekening Akun Bank.
bank_type String Nama Bank, misal: bca, mandiri, bri.
is_active Integer Kolom is_active menunjukan status Bank Anda, jika 1 berarti sedang Aktif sedangkan 0 berarti sedang Non-Aktif/Stop.
created_at Timestamp Waktu penambahan Akun Bank di Moota.
bank_id String ID Bank Anda, bisa digunakan untuk cek mutasi via API.

Data Mutasi Bulan Ini

Menampilkan data Mutasi pada bulan ini. Akan memberikan response

Contoh request:

curl "https://app.moota.co/api/v1/bank/{bank_id}/mutation/" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank/{bank_id}/mutation/');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "total": 2,
    "per_page": 15,
    "current_page": 1,
    "last_page": 1,
    "next_page_url": null,
    "prev_page_url": null,
    "from": 1,
    "to": 2,
    "data": [
        {
            "date": null,
            "description": "TARIKAN ATM TARIKAN ATM 27/10",
            "amount": 123123,
            "type": "DB",
            "balance": 123123123,
            "created_at": "2017-10-01 03:00:11",
            "mutation_id": "xxxxxxx",
            "note": ""
        },
        {
            "date": "2017-10-01 00:00:00",
            "description": "TRSF E-BANKING DB XXXXX",
            "amount": 123123,
            "type": "DB",
            "balance": 123123123,
            "created_at": "2017-10-01 22:51:11",
            "mutation_id": "xxxxxxx",
            "note": "Catatan Mutasi"
        }
    ]
}

HTTP Request

GET api/v1/bank/{bank_id}/mutation/

GET Parameter

Parameter Deskripsi
{bank_id} ID Akun Bank anda. Untuk mendapatkan ID, silahkan akses ENDPOINT api/v1/bank terlebih dahulu.

Response

JSON Attribute Data Type Deskripsi
date Timestamp Tanggal Mutasi.
description String Deskripsi Transaksi.
amount Integer Nominal Mutasi.
type String Tipe transaksi, CR untuk kredit dan DB untuk debit.
balance Integer Saldo rekening Anda.
created_at Timestamp Tanggal data Mutasi dibuat di Moota.
mutation_id String ID Mutasi.
note String Catatan Mutasi.

Data Mutasi Terakhir

Menampilkan data Mutasi terakhir di Bank Anda. Bisa diambil melalu endpoint api/v1/bank, jika Anda ingin menampilkan dengan jumlah tertentu, silahkan tambahkan /{jumlah} pada endpoint. Misal: /bank/{bank_id}/mutation/recent/11

Contoh request:

curl "https://app.moota.co/api/v1/bank/{bank_id}/mutation/recent/{jumlah?}" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank/{bank_id}/mutation/recent/{jumlah}');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

[
    {
        "date": "2017-06-11 19:41:55",
        "description": "TARIKAN ATM 04\/06",
        "amount": 100000,
        "type": "DB",
        "balance": 9999999,
        "created_at": "2017-06-11 19:41:55",
        "mutation_id": "XX",
        "note": "Catatan mutasi"
    },
    {
        "date": "2017-06-09 14:21:43",
        "description": "TARIKAN ATM 09\/06",
        "amount": 9999999,
        "type": "DB",
        "balance": 1818376,
        "created_at": "2017-06-09 14:21:43",
        "mutation_id": "XX",
        "note": "Catatan mutasi"
    }
]

HTTP Request

GET api/v1/bank/{bank_id}/mutation/recent/{jumlah?}

GET Parameter

Parameter Deskripsi
{bank_id} ID Akun Bank anda. Untuk mendapatkan ID, silahkan akses ENDPOINT api/v1/bank terlebih dahulu.
{jumlah} Secara default Moota akan menampilkan 10 data saja, Anda bisa memasukan nilai minimal 10 dan maksimal 20.

Response

JSON Attribute Data Type Deskripsi
date Timestamp Tanggal Mutasi.
description String Deskripsi Transaksi.
amount Integer Nominal Mutasi.
type String Tipe transaksi, CR untuk kredit dan DB untuk debit.
balance Integer Saldo rekening Anda.
created_at Timestamp Tanggal data Mutasi dibuat di Moota.
mutation_id String ID Mutasi.
note String Catatan Mutasi.

Mencari Data Mutasi berdasarkan Nominal

Mencari dan menampilkan maksimal 20 data mutasi dengan jumlah tertentu pada 7 hari terakhir.

Contoh request:

curl "https://app.moota.co/api/v1/bank/{bank_id}/mutation/search/{amount}" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank/{bank_id}/mutation/search/{amount}');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "from": "2017-06-05 09:41:11",
    "to": "2017-06-12 09:41:11",
    "mutation": [
        {
            "date": "2017-06-02 00:00:00",
            "description": "TARIKAN ATM 02\/06",
            "amount": 50000,
            "type": "DB",
            "balance": 99999999,
            "created_at": "2017-06-11 19:41:55",
            "mutation_id": "qB",
            "note": "Catatan mutasi"
        }
    ]
}

HTTP Request

GET api/v1/bank/{bank_id}/mutation/search/{amount}

GET Parameter

Parameter Deskripsi
{bank_id} ID Akun Bank anda. Untuk mendapatkan ID, silahkan akses ENDPOINT api/v1/bank terlebih dahulu.
{amount} Nominal mutasi yang ingin dicari.

Response

JSON Attribute Data Type Deskripsi
date Timestamp Tanggal Mutasi.
description String Deskripsi Transaksi.
amount Integer Nominal Mutasi.
type String Tipe transaksi, CR untuk kredit dan DB untuk debit.
balance Integer Saldo rekening Anda.
created_at Timestamp Tanggal data Mutasi dibuat di Moota.
mutation_id String ID Mutasi.
note String Catatan Mutasi.

Mencari Data Mutasi berdasarkan Deskripsi

Mencari dan menampilkan maksimal 20 data mutasi dengan Deskripsi tertentu pada 7 hari terakhir.

Contoh request:

curl "https://app.moota.co/api/v1/bank/{bank_id}/mutation/search/description/{description}" \
-H "Accept: application/json" -H "Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx"
<?php
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://app.moota.co/api/v1/bank/{bank_id}/mutation/search/description/{description}');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_HTTPHEADER, [
    'Accept: application/json',
    'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx'
]);
$response = curl_exec($curl);

Contoh response:

{
    "from": "2017-06-05 09:41:11",
    "to": "2017-06-12 09:41:11",
    "mutation": [
        {
            "date": "2017-06-02 00:00:00",
            "description": "TARIKAN ATM 02\/06",
            "amount": 50000,
            "type": "DB",
            "balance": 99999999,
            "created_at": "2017-06-11 19:41:55",
            "mutation_id": "qB",
            "note": "Catatan mutasi"
        }
    ]
}

HTTP Request

GET api/v1/bank/{bank_id}/mutation/search/description/{description}

GET Parameter

Parameter Deskripsi
{bank_id} ID Akun Bank anda. Untuk mendapatkan ID, silahkan akses ENDPOINT api/v1/bank terlebih dahulu.
{description} Deskripsi mutasi yang ingin dicari.

Response

JSON Attribute Data Type Deskripsi
date Timestamp Tanggal Mutasi.
description String Deskripsi Transaksi.
amount Integer Nominal Mutasi.
type String Tipe transaksi, CR untuk kredit dan DB untuk debit.
balance Integer Saldo rekening Anda.
created_at Timestamp Tanggal data Mutasi dibuat di Moota.
mutation_id String ID Mutasi.
note String Catatan Mutasi.

Push Notification

Authorization

Contoh data yang dikirim:

[
    {
        "id":"XX",
        "bank_id":"Lagzqb03j42",
        "account_number":657236613,
        "bank_type":"BCA",
        "date":"01\/01\/2018",
        "amount":125000,
        "description":"lorem ipsum dolor sit amet",
        "type":"CR",
        "balance":1900000
    },
    {
        "id":"XX",
        "bank_id":"Lagzqb03j42",
        "account_number":657236613,
        "bank_type":"BCA",
        "date":"01\/01\/2018",
        "amount":350000,
        "description":"lorem ipsum dolor sit amet",
        "type":"CR",
        "balance":1900000
    }
]

Contoh menangkap data yang dikirim dari Moota:

<?php
$notifications = json_decode( file_get_contents("php://input") );
if(!is_array($notifications)) {
    $notifications = json_decode( $notifications );
}

if( count($notifications) > 0 ) {
    foreach( $notifications as $notification) {
        // Your code here
    }
}

Setiap kali mengirim Push Notification, Moota akan menambah URL Query apikey=<token> pada URL dan juga mengirim Header yang keduanya bisa Anda gunakan untuk proses Autentikasi.

Header Name Value
HTTP_AUTHORIZATION: Basic <api_token>: <api_token> akan berisi testing jika Anda melakukan push lewat halaman Push Test for Developers. Jika bukan maka akan berisi API Token Anda berupa karakter acak yang bisa Anda rubah/regenerate di menu Setting TOKEN API.

Push Test

Untuk melakukan pengujian Push Test Moota, anda bisa menggunakan Push Test.

Demo Data

Postman Collections

Jika Anda membutuhkan Postman Collections, silahkan klik disini