{"info":{"_postman_id":"4e0e7804-2955-44fe-bc97-77c48381f187","name":"TPI Documentation H2H","description":"<html><head></head><body><h1 id=\"overview\">📄 Overview</h1>\n<p>TPI Host to Host adalah penyedia layanan digital produk seperti pulsa, paket data, token pln, pembayaran online (PPOB) dan lainnya dengan menyediakan jalur transaksi via API, Jabber, dan Http get. Dokumentasi ini menjelaskan bagaimana cara untuk mengintegrasikan layanan anda dengan kami menggunakan Application Programming Interface (API)</p>\n<h2 id=\"persiapan\">Persiapan</h2>\n<ul>\n<li><p>Client ID</p>\n</li>\n<li><p>Client Secret</p>\n</li>\n<li><p>URL Webhook dari anda (digunakan untuk menerima status update transaksi)</p>\n</li>\n<li><p>Webhook Secret Key</p>\n</li>\n</ul>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>Nama</strong></th>\n<th><strong>Base URL</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>Sandbox</td>\n<td><a href=\"https://h2h-sandbox.nukupay.com\">https://h2h-sandbox.tp-int.online</a></td>\n</tr>\n<tr>\n<td>Production</td>\n<td><a href=\"https://h2h.nukupay.com\">https://h2h.tp-int.online</a></td>\n</tr>\n</tbody>\n</table>\n</div><hr>\n<h2 id=\"signature\">Signature</h2>\n<p><em>Signature</em> digunakan untuk memastikan bahwa data yang anda kirimkan adalah asli dan tidak bisa disanggah. Signature dihasilkan dari anda dan diverifikasi oleh kami.</p>\n<p><em>Signature</em> dibentuk oleh payload yang sudah kami tentukan dengan mengimplementasikan algoritma <em>HMAC_512</em> denga <strong>Client Secret</strong> sebagi kuncinya</p>\n<h3 id=\"format-payload\">Format Payload</h3>\n<blockquote>\n<p>http_method:client_id:access_token:payload:timestamp </p>\n</blockquote>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th><strong>nama</strong></th>\n<th><strong>keterangan</strong></th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td>http_method</td>\n<td>Http method request API. contoh: POST</td>\n</tr>\n<tr>\n<td>client_id</td>\n<td>Client ID yang didapat dari dashboard mitra</td>\n</tr>\n<tr>\n<td>access_token</td>\n<td>Token yang didapatkan dari API Credentials</td>\n</tr>\n<tr>\n<td>payload</td>\n<td>body data yang disignature menggunakan algoritma SHA-256. contoh: SHA-256(JSON.stringify({\"ref_id\" : \"1\"})).diggest (\"hex\")</td>\n</tr>\n<tr>\n<td>timestamp</td>\n<td>Waktu saat ini ketika melakukan request API. format timestamp ISO8601</td>\n</tr>\n</tbody>\n</table>\n</div><h2 id=\"daftar-response-code\">Daftar Response Code</h2>\n<div class=\"click-to-expand-wrapper is-table-wrapper\"><table>\n<thead>\n<tr>\n<th>Response Code</th>\n<th>Keterangan</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n</div></body></html>","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","toc":[{"content":"📄 Overview","slug":"overview"}],"owner":"7310263","collectionId":"4e0e7804-2955-44fe-bc97-77c48381f187","publishedId":"2sBY4WpxCr","public":true,"customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"FF6C37"},"publishDate":"2026-08-13T07:14:30.000Z"},"item":[{"name":"credentials","item":[{"name":"get access token","event":[{"listen":"prerequest","script":{"id":"fac0ef11-c442-4c56-93aa-b6eb4bd8cbe9","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const body = pm.request.body;","","if (!clientId || !clientSecret || !timestamp) {","    throw new Error(`Missing env var(s): clientId=${clientId}, clientSecret=${clientSecret}, timestamp=${timestamp}`);","}","","const messageSignature = CryptoJS.enc.Hex.stringify(","    CryptoJS.HmacSHA512(clientId + \":\" + timestamp, clientSecret)",");","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}},{"listen":"test","script":{"id":"458ca537-ab11-40e7-bfc9-741a9df943b7","exec":["const responseData = pm.response.json();","if(responseData.data.responseCode == \"00\") {","    pm.environment.set(\"access_token\", responseData.data.access_token);","}"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"d9bc7854-8d3f-4cfa-bb64-68068cd75b5a","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"url":"https://h2h-sandbox.tp-int.online/v1/credentials/token/access","urlObject":{"protocol":"https","path":["v1","credentials","token","access"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"d9bc7854-8d3f-4cfa-bb64-68068cd75b5a"}],"id":"dc9bf6f4-860f-49f8-b801-ca0a41e1b64f","_postman_id":"dc9bf6f4-860f-49f8-b801-ca0a41e1b64f","description":""},{"name":"product","item":[{"name":"get prabayar","event":[{"listen":"prerequest","script":{"id":"a7a45ece-1ace-4596-988f-7180418be6f7","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256(\"{}\");","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"6913f4c3-0278-4913-a66b-ae7fbfe3e8bd","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/product/prabayar","urlObject":{"protocol":"https","path":["v1","product","prabayar"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"6913f4c3-0278-4913-a66b-ae7fbfe3e8bd"},{"name":"get pascabayar","event":[{"listen":"prerequest","script":{"id":"a7a45ece-1ace-4596-988f-7180418be6f7","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256(\"{}\");","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"9b23983a-40ea-4afd-8bdb-16727a0ef2ae","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/product/pascabayar","urlObject":{"protocol":"https","path":["v1","product","pascabayar"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"9b23983a-40ea-4afd-8bdb-16727a0ef2ae"}],"id":"a7139678-08f1-482c-b90e-af795032065f","_postman_id":"a7139678-08f1-482c-b90e-af795032065f","description":""},{"name":"deposit","item":[{"name":"get balances","event":[{"listen":"prerequest","script":{"id":"2efb9ae1-c3c1-43dd-84f1-33fe9aab947b","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256(\"{}\");","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"045a8772-bd4f-485b-9cbf-8cb21dc2db90","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/deposit/balance/inquiry","urlObject":{"protocol":"https","path":["v1","deposit","balance","inquiry"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"045a8772-bd4f-485b-9cbf-8cb21dc2db90"}],"id":"0a00c926-96d5-4620-85cb-1de62ac21eee","_postman_id":"0a00c926-96d5-4620-85cb-1de62ac21eee","description":""},{"name":"transaction","item":[{"name":"purchase","event":[{"listen":"prerequest","script":{"id":"df691fbb-8422-4d5a-9d75-df5dd84c19ea","exec":["var Property = require('postman-collection').Property;","","const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256('{\"customer_no\":\"0811111111111\",\"product_code\":\"I5\",\"ref_id\":\"1\"}');","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"4acac246-981c-4293-9453-1760142afdcb","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customer_no\" : \"0811111111111\",\n    \"product_code\" : \"I5\",\n    \"ref_id\": \"1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/transaction/prabayar/purchase","urlObject":{"protocol":"https","path":["v1","transaction","prabayar","purchase"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"4acac246-981c-4293-9453-1760142afdcb"},{"name":"inquiry tagihan","event":[{"listen":"prerequest","script":{"id":"1284007e-88de-4bde-ae77-659edcd97b79","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256('{\"destination_number\":\"12345678\",\"product_code\":\"PLNPASCA\",\"ref_id\":\"1\"}');","","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"a325e572-1cfe-4508-8028-97dce0c7f8e2","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"destination_number\" : \"12345678\",\n    \"product_code\" : \"PLNPASCA\",\n    \"ref_id\" : \"1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/transaction/pascabayar/inquiry","urlObject":{"protocol":"https","path":["v1","transaction","pascabayar","inquiry"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"a325e572-1cfe-4508-8028-97dce0c7f8e2"},{"name":"pay","event":[{"listen":"prerequest","script":{"id":"5cb65cd0-7fda-4541-b237-b176913915e3","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256('{\"ref_id\":\"1\"}');","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"5bad2518-e1f3-4291-acf6-337d0a3e5ca9","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"ref_id\" : \"1\"\n}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/transaction/pascabayar/pay","urlObject":{"protocol":"https","path":["v1","transaction","pascabayar","pay"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"5bad2518-e1f3-4291-acf6-337d0a3e5ca9"},{"name":"inquiry pln","event":[{"listen":"prerequest","script":{"id":"963bb264-76fa-4bc4-a0b5-17a0c3aa6cf7","exec":["const clientId = pm.environment.get('client_id');","const clientSecret = pm.environment.get('client_secret');","const timestamp = pm.environment.get('timestamp');","const accessToken = pm.environment.get('access_token');","const signature_payload = CryptoJS.SHA256('{\"customer_no\":\"123456\"}');","","const messageSignature = CryptoJS.enc.Hex.stringify(CryptoJS.HmacSHA512(\"POST:\" + clientId + \":\" + accessToken + \":\" + signature_payload + \":\" + timestamp, clientSecret));","pm.environment.set('signature', messageSignature);"],"type":"text/javascript","packages":{},"requests":{}}}],"id":"7c979147-da12-483e-a644-9b7fad172044","protocolProfileBehavior":{"disableBodyPruning":true},"request":{"method":"POST","header":[{"key":"Authorization","value":"Bearer {{access_token}}","type":"text"},{"key":"X-Signature","value":"{{signature}}","type":"text"},{"key":"X-Client-ID","value":"{{client_id}}","type":"text"},{"key":"X-Timestamp","value":"{{timestamp}}","type":"text"}],"body":{"mode":"raw","raw":"{\n    \"customer_no\" : \"123456\"\n}","options":{"raw":{"language":"json"}}},"url":"https://h2h-sandbox.tp-int.online/v1/transaction/pln/inquiry","urlObject":{"protocol":"https","path":["v1","transaction","pln","inquiry"],"host":["h2h-sandbox","tp-int","online"],"query":[],"variable":[]}},"response":[],"_postman_id":"7c979147-da12-483e-a644-9b7fad172044"}],"id":"43f8215c-3f0b-432b-80b2-d73fdf4dad62","_postman_id":"43f8215c-3f0b-432b-80b2-d73fdf4dad62","description":""}],"event":[{"listen":"prerequest","script":{"id":"76578cdc-e897-4f15-a67f-2db7ea2b5b33","type":"text/javascript","exec":[""]}},{"listen":"test","script":{"id":"967c67e9-bf2b-42ef-af2b-f0eace6101bf","type":"text/javascript","exec":[""]}}]}