Flip 数据 API:唯一码、银行账户查询与话费
Flip: Transfer & Cashback 是印尼金融科技公司 PT Fliptech Lentera Inspirasi Pertiwi 推出的个人汇款应用,让用户在本地银行之间转账,而无需支付通常的银行间手续费。用户用邮箱登录,查询收款账户,选择发送方银行,再通过存入一笔带有唯一码的金额完成转账;同一个账号还能充值话费、追踪返现,并在转账无法到账时办理退款。Google Play 页面显示安装量超过 1000 万次,在 733,658 条评价中评分为 4.66,用户仅限印度尼西亚;同样的境内汇款,他们此前通常会用银行应用、DANA 或 OVO 来完成。
唯一码入账贯穿每一笔印尼银行间转账:分配接口按所选的 bank 与 nominal 返回 kode_unik,登记后的记录以 id_transaksi、biaya 和 timestamp 返回。收款账户查询先根据 rekening 加 bank 填出 nama 与 kota,转账表单才会提交 noRekTujuan、namaTujuan、bankPengirim 和 bankPenerima。
登录后的账本就是 KYC 资料本身:saldo、limit_transfer、kyc、no_identitas 以及累计的 menghemat,与 no_hp、jumlah_transaksi 同在一条用户记录上。历史记录行再增加 no_rek_tujuan、time_served 和 bukti_shortlink;退款保留 ref_sumber 与 alasan;话费 SKU 以 id_produk_flip、nama_produk 和 harga 形式提供,并按 operator 分组。
代发款项与工资发放系统借助查询返回的户名比对,加上唯一码对账来关闭付款;目录聚合商从同一份商品列表刷新话费价格。openData Studio 将这些对象转化为可调用的开放数据。
应用截图
API 端点一览
以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。
邮箱登录
POST
/v1/sessions/emailosint用邮箱凭证换取会话 jwt;客户端在会话期内保存它,并在之后每次调用中作为 Bearer 令牌附带。
认证方式: 无需认证;表单提交 email 与 password,查询参数带 via=email、platform 和 version。客户端保存返回的 jwt,并在后续调用中将其作为 Authorization Bearer 发送,同时附带固定的 api-key 请求头。
- password
- via
- platform
- version
- jwt
POST /v1/sessions/email?via=email&platform=android&version=61 HTTP/1.1 Content-Type: application/x-www-form-urlencoded api-key: <app-key> email=ada%40contoh.id&password=********{ "jwt": "<session-jwt>", "errors": [] }当前用户资料
GET
/v1/members/meopenfinance加载已登录会员的资料、KYC 身份信息、剩余余额(saldo)、累计节省金额(menghemat)以及当前转账限额。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- id
- username
- nama
- no_identitas
- jenis_identitas
- tgl_lahir
- foto_identitas
- prof_pic
- no_hp
- no_hp_verified
- saldo
- kyc
- kyc_baru
- kota
- menghemat
- alamat
- limit_transfer
- tempat_lahir
- jumlah_transaksi
- chat_token
GET /v1/members/me HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "id": "184221", "username": "ada", "email": "[email protected]", "nama": "Ada Putri", "no_identitas": "3171xxxxxxxxxxxx", "jenis_identitas": "ktp", "tgl_lahir": "1994-02-11", "foto_identitas": "https://files.example.com/identity/184221.jpg", "prof_pic": "https://files.example.com/avatars/184221.jpg", "no_hp": "081234567890", "no_hp_verified": "1", "saldo": "125000", "kyc": "1", "kyc_baru": "1", "kota": "jakarta-selatan", "menghemat": "340000", "alamat": "Jl. Melawai 12", "limit_transfer": 10000000, "tempat_lahir": "Jakarta", "jumlah_transaksi": "42", "chat_token": "ct-9f21" }收款账户查询
POST
/v1/accounts/lookupopenbanking在创建银行间转账之前,把印尼银行账号解析为登记的户名、城市和可选邮箱。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- rekening
- bank
- kota
- nama
POST /v1/accounts/lookup HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: Bearer <jwt> api-key: <app-key> rekening=1234567890&bank=bca{ "rekening": "1234567890", "bank": "bca", "kota": "jakarta", "nama": "BUDI SANTOSO", "email": "[email protected]" }分配唯一入账码
POST
/v1/deposit-codesopenbanking生成三位数的 kode_unik,发送方把它加到转账金额上,使入账的银行存款可以被匹配。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- bank
- nominal
- kode_unik
POST /v1/deposit-codes HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: Bearer <jwt> api-key: <app-key> bank=bca&nominal=500000{ "kode_unik": 314 }创建银行间转账
POST
/v1/bank-transfersopenbanking登记一笔银行间转账:收款账户、发送方银行、金额、备注和唯一码,返回新的交易 id 与手续费。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- emailTujuan
- noRekTujuan
- namaTujuan
- bankPengirim
- bankPenerima
- nominal
- berita
- jenisRekening
- kota
- kodeUnik
- isFlipPlus
- id_transaksi
- kode_unik
- biaya
- timestamp
POST /v1/bank-transfers HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: Bearer <jwt> api-key: <app-key> emailTujuan=budi%40contoh.id&noRekTujuan=1234567890&namaTujuan=BUDI%20SANTOSO&bankPengirim=mandiri&bankPenerima=bca&nominal=500000&berita=Bayar%20sewa&jenisRekening=biasa&kota=jakarta&kodeUnik=314&isFlipPlus=0{ "id_transaksi": "882145", "kode_unik": 314, "biaya": 0, "timestamp": "2026-10-17 09:14:02" }校验银行间转账
POST
/v1/bank-transfers/precheckopenbanking在分配唯一码并创建记录之前,对转账草稿(账户、银行、金额、Flip Plus 标志)做预检。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- noRekTujuan
- namaTujuan
- bankPengirim
- bankPenerima
- nominal
- berita
- jenisRekening
- kota
- isFlipPlus
- errors
POST /v1/bank-transfers/precheck HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: Bearer <jwt> api-key: <app-key> noRekTujuan=1234567890&namaTujuan=BUDI%20SANTOSO&bankPengirim=mandiri&bankPenerima=bca&nominal=500000&berita=Bayar%20sewa&jenisRekening=biasa&kota=jakarta&isFlipPlus=0{ "errors": [] }银行间转账列表
GET
/v1/bank-transfersopenbanking分页返回发送方的银行间转账历史,含收款账户、唯一码、手续费、完成时间和回执短链接。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- id
- no_rek_tujuan
- bank_penerima
- nama_tujuan
- kota
- bank_pengirim
- nominal
- biaya
- berita
- bukti_shortlink
- kode_unik
- status
- time_served
- bukti
- keterangan
GET /v1/bank-transfers?pagination=20&page=1&sort=-timestamp&showBundleChild=true HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "data": [ { "id": "882145", "no_rek_tujuan": "1234567890", "bank_penerima": "bca", "nama_tujuan": "BUDI SANTOSO", "kota": "jakarta", "bank_pengirim": "mandiri", "nominal": 500000, "biaya": 0, "berita": "Bayar sewa", "bukti_shortlink": "https://s.example.com/b/882145", "kode_unik": 314, "status": 1, "time_served": "2026-10-17 10:02:11", "bukti": "https://files.example.com/proofs/882145.jpg", "keterangan": "" } ] }银行间转账限额
GET
/v1/bank-transfers/allowanceopenfinance返回剩余的每日/周期转账上限,应用将其显示为会员的转账限额。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- limit
GET /v1/bank-transfers/allowance HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "limit": 10000000 }累计节省金额
GET
/v1/rewards/savingsopendata读取首页显示为 menghemat 的累计返现与已省手续费总额。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- hemat
GET /v1/rewards/savings HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "hemat": "340000" }上传转账回执
POST
/v1/payment-proofsopenbanking把银行入账截图附加到待处理的转账,使唯一码付款得以确认。
认证方式: Authorization Bearer jwt 加 api-key 请求头;以 multipart/form-data 上传图片
- id_transaksi
- bukti
- url
POST /v1/payment-proofs HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key> Content-Type: multipart/form-data --boundary Content-Disposition: form-data; name="id_transaksi" 882145 --boundary Content-Disposition: form-data; name="bukti"; filename="bukti.jpg" Content-Type: image/jpg <jpeg bytes>{ "url": "https://files.example.com/proofs/882145.jpg" }已保存的收款账户
GET
/v1/beneficiariesopenbanking返回收藏与最近使用的收款账户,供转账表单自动补全。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- rekening_favorit
- history_rekening
- noRekening
- bank
- nama
- kota
GET /v1/beneficiaries HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "rekening_favorit": { "data": [ { "noRekening": "1234567890", "bank": "bca", "nama": "BUDI SANTOSO", "kota": "jakarta" } ] }, "history_rekening": [ { "noRekening": "0987654321", "bank": "mandiri", "nama": "SITI RAHMA" } ] }话费(PPOB)商品目录
GET
/v1/airtime/catalogopendata按运营商分组列出话费/PPOB SKU,含产品 id、显示名称、价格和手机号正则。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- jenis_produk
- version_code
- produks
- regex
- operator
- id_produk_flip
- nama_produk
- harga
GET /v1/airtime/catalog?jenis_produk=pulsa&version_code=61 HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "produks": [ { "operator": "telkomsel", "id_produk_flip": "tsel-25", "nama_produk": "Telkomsel 25rb", "jenis_produk": "pulsa", "harga": 25000 } ], "regex": [".*08.*"] }创建话费充值订单
POST
/v1/airtime/ordersopenfinance针对目录 SKU、发送方银行和展示价格创建预付费话费订单;随后付款等待唯一码入账。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- noHpTujuan
- idProdukFlip
- hargaDitampilkan
- bankPengirim
- id
- kode_unik
- status
- timestamp
POST /v1/airtime/orders HTTP/1.1 Content-Type: application/x-www-form-urlencoded Authorization: Bearer <jwt> api-key: <app-key> noHpTujuan=081234567890&idProdukFlip=tsel-25&hargaDitampilkan=25000&bankPengirim=bca{ "id": "99102", "kode_unik": 218, "status": 0, "timestamp": "2026-10-17 09:20:11" }提现列表
GET
/v1/cashoutsopenfinance列出余额提现到银行账户的记录,含金额、收款账户和状态。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- id
- jenis_transaksi
- nominal
- status
- no_rek_tujuan
- nama_tujuan
- bank_penerima
- bukti
- timestamp
GET /v1/cashouts HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "data": [ { "id": "44012", "jenis_transaksi": 0, "nominal": 125000, "status": 1, "no_rek_tujuan": "1234567890", "nama_tujuan": "ADA PUTRI", "bank_penerima": "bca", "bukti": "", "timestamp": "2026-10-16 18:01:00" } ] }退款列表
GET
/v1/reversalsopenfinance分页返回转账失败后的退款,含原因代码、来源交易 id(ref_sumber)以及应收回款项的银行账户。
认证方式: Authorization Bearer jwt 加 api-key 请求头
- id
- nominal
- alasan
- status
- notes
- timestamp
- bukti
- ref_sumber
- keterangan
- no_rek_tujuan
- bank_penerima
- nama_tujuan
GET /v1/reversals?pagination=20&page=1&sort=-timestamp HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "data": [ { "id": "7701", "nominal": "500000", "alasan": 1, "status": "1", "notes": "Rekening tujuan salah", "timestamp": "2026-10-15 11:22:00", "bukti": "", "ref_sumber": "882100", "keterangan": [], "no_rek_tujuan": "1234567890", "bank_penerima": "bca", "nama_tujuan": "ADA PUTRI" } ] }应用信息与维护状态
GET
/v1/service/statusopendata发布受支持的应用版本、维护标志,以及显示在首页的 gangguan(故障)横幅。
认证方式: Authorization Bearer jwt 加 api-key 请求头(该调用仅用于信息展示,客户端仍会附带它们)
- version
- maintenance
- gangguan
GET /v1/service/status HTTP/1.1 Authorization: Bearer <jwt> api-key: <app-key>{ "version": "0.6.5", "maintenance": false, "gangguan": "" }
数据类别
- KYC 资料
- 余额
- 账户查询
- 银行间转账
- 唯一码
- 转账回执
- 话费目录
- 退款
- 提现
数据使用场景与案例
唯一码入账对账
财务机器人按 kode_unik、nominal 和 bank_pengirim 把银行入账与 Flip 转账逐一匹配,待 time_served 与 bukti_shortlink 出现后关闭该记录。
预先核验收款账户
工资发放或代付工具先用 rekening 加 bank 查询,只有返回的 nama 与预期收款人一致才放行付款。
KYC 与限额把关
借贷或返现合作方在放行更大额转账或 Flip 余额提现之前,先读取 kyc、no_identitas、saldo 和 limit_transfer。
话费目录同步
账单支付聚合商按运营商拉取 produks 分组(id_produk_flip、nama_produk、harga),使应用内话费价格与 Flip 的 SKU 列表保持一致。
常见问题
哪些 Flip 对象可以标识一笔银行间转账?
创建调用返回 id_transaksi、kode_unik、biaya 和 timestamp。历史记录行再增加 no_rek_tujuan、nama_tujuan、bank_pengirim、bank_penerima、time_served 和 bukti_shortlink。
收款账户查询是如何工作的?
提交 rekening 和 bank;响应中的 nama、kota 以及可选的 email 会被复制到转账表单,作为 noRekTujuan / namaTujuan,然后才进行预检或创建调用。
会员记录上有哪些 KYC 与余额字段?
会员资料合并了 id、nama、email、no_identitas、jenis_identitas、no_hp、no_hp_verified、kyc、kyc_baru、saldo、limit_transfer、menghemat、kota、alamat 和 jumlah_transaksi。
Flip 客户端是如何认证的?
邮箱登录返回 jwt,客户端在会话期内保存它。之后的每次调用都把它作为 Authorization Bearer 令牌发送,并附带固定的 api-key 请求头;POST 请求体为 application/x-www-form-urlencoded,只有回执上传使用 multipart。
与 Flip: Transfer & Cashback 相似的应用
- DANA Indonesia Digital Wallet — DANA 是 PT Espay Debit Indonesia Koe 持印尼央行牌照的电子钱包,可扫 QRIS 付款、向 BCA、BRI、BNI、Mandiri 等银行账户转账,也可打款到 GoPay、ShopeePay 和 OVO。
- OVO — OVO 是 PT Visionet Internasional 在雅加达运营、持印尼央行电子货币牌照的应用,用 OVO Cash 付款、用 OVO Points 在商户累积奖励。
- GoPay: Transfer, Payment, QRIS — GoPay 是 PT GoTo Gojek Tokopedia Tbk 的消费者钱包,用于银行转账、QRIS 付款、话费充值和缴账单,可转给其他 GoPay 用户、银行及其他电子钱包。
- Jenius — Jenius 是 PT Bank SMBC Indonesia Tbk 的数字银行应用,提供向他行无限次免费转账、账单与虚拟账户缴费、话费充值以及 Visa 借记卡。
- SeaBank — SeaBank 是 PT Bank Seabank Indonesia 的数字银行应用,写明免账户管理费、每月向各银行免费转账 100 次,并向 ShopeePay 免费充值。
- BCA mobile — BCA mobile 是中亚银行(PT Bank Central Asia Tbk)的消费者应用,其 m-BCA 模块可在 BCA 账户之间及向他行转账,并保存常用收款账户。
- Bank Jago — Bank Jago 是印尼数字银行应用,提供最多 150 次免费银行转账、BI-FAST 汇款、从指定 Pocket 扫 QRIS 付款,以及免手续费充值 GoPay。
- Wise: International Transfers — Wise 是多币种国际账户应用,在其印尼站点提供跨境汇款、收款与换汇,可作为银行海外汇款之外的选择。
相关主题
- Flip 数据 API
- Flip 唯一码转账
- 印尼银行账号户名查询
- Flip 余额 KYC
- Flip 话费商品目录
- 银行间转账唯一码
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业