Free Ebook Tutorial from Rosihan Ari's Blog

Tutorial Javascript | Tutorial PHP | Tutorial AJAX | Tutorial CSS | Tutorial FPDF | Tutorial Wordpress | Tutorial Java SE


Ebook yang direkomendasikan untuk Anda
Ebook Panduan Praktis OOP di PHP


Cara Menampilkan Saldo Balance Paypal dengan PHP Via API


April 10th, 2011 | by rosihanari | Cetak Artikel Cetak Artikel


GampSMS SMS Gateway

Lama sekali saya tidak pernah posting artikel terbaru di blog ini. Kangen rasanya untuk kembali berbagi ide dan ilmu kepada para pengunjung setia blog.rosihanari.net :-)

Dalam artikel terbaru saya kali ini, saya akan mencoba memaparkan cara membuat script PHP untuk menampilkan saldo balance Paypal yang kita miliki. Script ini barangkali bisa bermanfaat bagi Anda yang berkecimpung pada dunia bisnis online khususnya dalam jual beli dana Paypal, seperti halnya Mas Hengky dengan PasPisan.com nya :-) Dengan ide ini, visitor bisa mengetahui seberapa banyak stock dana Paypal yang akan kita jual secara live karena terhubung langsung dengan akun Paypal kita di server Paypal.

Untuk menampilkan saldo balance Paypal menggunakan PHP ini, kita sebelumnya harus sudah memiliki API Access atau lebih tepatnya Paypal API Signature. Paypal API Signature ini berupa API Username, API Password dan juga Signature. Setiap akun Paypal, pasti memiliki Paypal API Signature yang berbeda-beda. Untuk merequest API Signature, silakan masuk ke akun Paypal Anda, lalu klik menu PROFILE, klik API Access pada kolom Account Information. Selanjutnya jika muncul 2 ops, pilihlah opsi yang berbunyi ‘Request API credentials to create your own API username and password. ‘. Jika proses request API sukses, maka Anda akan melihat API Signature seperti gambar di bawah ini

Paypal API Signature

Setelah muncul API Signature tersebut, saya berpesan: ‘Jangan beritahukan API Signature tersebut ke orang lain supaya tidak disalahgunakan

Selanjutnya, API Signature yang terdiri dari API Username, API Password dan Signature ini akan kita masukkan ke dalam script PHP untuk menampilkan saldo balance Paypal kita.

Sekarang… kita lanjut ke pembuatan script PHP nya.

Mengingat server Paypal menggunakan SSL (Secured Socket Layer) yang certified, maka untuk mengakses data dari server Paypal kita harus menggunakan Public Certificate Authorities (public CA). Untuk mendapatkan public CA ini, silakan mendownload di sini.

Lantas… bagaimana cara membaca data saldo balance Paypal nya? idenya adalah menggunakan CURL.

Sebelum kita mulai membuat script PHP nya, perlu saya informasikan juga bahwa untuk API Service ini, Paypal menyediakan 2 cara akses yaitu bisa menggunakan SOAP atau NVP (Name-Value Pair). Dalam pembahasan ini, saya hanya memaparkan cara akses menggunakan NVP saja, karena untuk SOAP saya tidak begitu familiar.

Nah… selanjutnya ke server mana kita harus akses CURL nya? Untuk layanan API, Paypal menyediakan server yang beralamat di “https://api-3t.paypal.com/nvp”.

Sekarang kita bisa buat script PHP sbb:

cekbalance.php

<?php
$url = "https://api-3t.paypal.com/nvp";

// masukkan API username
$APIusername  = '...';

// masukkan API password
$APIpassword  = '...';

// masukkan API signature
$APIsignature = '...';

// membaca file public CA
$certificate = dirname(__FILE__).'/CARootCerts.pem';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_VERBOSE, 1);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_CAINFO, $certificate);
curl_setopt($ch, CURLOPT_POST, 1);

// parameter CURL untuk akses Paypal balance
curl_setopt($ch, CURLOPT_POSTFIELDS, "USER=".$APIusername."&PWD=".$APIpassword."&SIGNATURE=".$APIsignature."&METHOD=getBalance&VERSION=56.0");
// respon dari CURL dibaca
$output = urldecode(curl_exec($ch));

curl_close($ch);

// menampilkan respon CURL
echo $output;

?>

Oya, sebelum Anda menjalankan script di atas, pastikan file public CA sudah Anda letakkan dalam folder yang sama dengan script di atas.

Jika Anda menjalankan script di atas di browser maka akan muncul respon CURL nya sbb:

Paypal API Cek Balance

Dalam respon CURL tersebut, besarnya saldo tampak pada parameter ‘L_AMT0′ dan dengan mata uangnya pada ‘L_CURRENCYCODE0′. Kok tampilannya masih mentahan (raw) seperti itu ya? Supaya lebih manis tampilannya, maka kita perlu melakukan parsing untuk hanya mendapatkan besarnya saldo dan mata uangnya saja. Berikut ini script cekbalance.php yang sudah dimodifikasi dengan menambahkan bbrp paris perintah untuk proses parsing.

cekbalance.php

<?php
$url = "https://api-3t.paypal.com/nvp";

// masukkan API username
$APIusername  = '...';

// masukkan API password
$APIpassword  = '...';

// masukkan API signature
$APIsignature = '...';

// membaca file public CA
$certificate = dirname(__FILE__).'/CARootCerts.pem';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_VERBOSE, 1);

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, CURLOPT_CAINFO, $certificate);
curl_setopt($ch, CURLOPT_POST, 1);

// parameter CURL untuk akses Paypal balance
curl_setopt($ch, CURLOPT_POSTFIELDS, "USER=".$APIusername."&PWD=".$APIpassword."&SIGNATURE=".$APIsignature."&METHOD=getBalance&VERSION=56.0");
// respon dari CURL dibaca
$output = urldecode(curl_exec($ch));

curl_close($ch);

// proses parsing menggunakan explode()
$parsing1 = explode("&", $output);
// untuk mendapatkan saldo
$parsing2 = explode("=", $parsing1[0]);
$saldo = $parsing2[1];
// untuk mendapatkan mata uang
$parsing2 = explode("=", $parsing1[1]);
$currency = $parsing2[1];

// menampilkan saldo setelah parsing
echo "Saldo Paypal: ".$currency." ".$saldo;

?>

Nah… dengan proses parsing, kita akan mendapatkan tampilan sbb:

Paypal API Cek Balance

Lebih cantik bukan tampilannya daripada sebelumnya?? :-) Sekarang Anda bisa sisipkan script tersebut di web atau blog Anda.

Paypal API Service tidak hanya digunakan untuk cek balance saja, namun juga bisa untuk keperluan Mass Payment, Direct Payment, cek transaksi dll. Untuk keterangan lebih lanjut tentang Paypal API ini, silakan Anda kunjungi

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/howto_api_overview

Selamat mencoba dan bereksperimen… :-)




Share ke Facebook Share ke Twitter
Baca Juga Artikel Terkait
Free Ebook Panduan Penggunaan Paypal
Teknik Mengirim Data (POST Method) Dari Remote Server Dengan CURL
Teknik Grabbing (Mengambil Teks Dari Situs Lain) Dengan CURL
Panduan Mendaftar Akun PayPal
Script PHP Menampilkan Hasil Pencarian Multikategori dengan Advanced Paging

Kata kunci: paypal api - paypal balance - php paypal - script paypal -


Ada 7 komentar dalam artikel ini.



  1. Zahra says:

    Mas, scriptnya yang untuk grab situs dan menampilkan disitus kita sudah saya coba, dan berhasil dg baik,,Terimakasih Mas !!!

    Terus saya mau tanya, untuk grab url yg dihasilkan dari situs lain yg menggunakan script php bagaimana mas,,,
    contoh http://blognetwork.com/psg_ppc_flash.php?b=1234&sz=728×90
    bagaimana agar url terbuka otomatis di iframe kita?
    Terimakasih mas, klo berkenan bisa dikirim lewat email mas

  2. Zahra says:

    terlepas dari ilegal ato tidaknya, saya hanya pingin tau pak, sebagai pembelajaran aja. karena ada temen saya pingin tahu hal itu dari saya, tapi saya baru belajar php, dan gak mudeng blas sama hal seperti itu,,,terimakasih

  3. Sang Agkuh says:

    cara memakai public CA nya itu gimana mas?
    mohon pencerahannya.
    thanks

    • rosihanari says:

      @sang agkuh: itu tinggal download saja mas certificate nya, lalu ditaruh di hosting atau pada folder yg sama dg script nya.

  4. Blogku says:

    Punyaku kok gak bisa ya,
    selalu tampil kode mentahan dari paypal, output dari curl nya belum di echo pun sudah tampil.
    terus $output , kalo di explode hasilnya null
    aku taruh di lokalhost dan di hosting pun tetep sama



 

Komentar/pertanyaan Anda!

Mohon maaf, komentar/pertanyaan yang menggunakan email palsu atau komentar bernada negatif, cemooh, umpatan, cacian atau sejenisnya secara otomatis akan terhapus karena dianggap spam dan tidak akan tampil

Dimohon jangan pula memasukkan code program dalam bentuk apapun ke dalam komentar karena akan dianggap spam.

Mohon maaf jika seandainya ada beberapa pertanyaan Anda yang tidak direspon atau ditanggapi mengingat banyaknya komentar yang masuk dan keterbatasan kemampuan/ilmu saya dalam menjawab pertanyaan satu persatu. Saya harap Anda bisa memahami dan memakluminya.

Semua komentar atau pertanyaan yg masuk tidak akan langsung tampil di halaman ini, karena akan dimoderasi dahulu.


*