Name Last Update
example Loading commit data...
pyramid_snap Loading commit data...
tests Loading commit data...
.gitignore Loading commit data...
README.rst Loading commit data...
pyproject.toml Loading commit data...

SNAP di Pyramid

Ini adalah landasan untuk penerapan SNAP di web framework Pyramid.

Kita bisa memasangnya langsung dengan cara:

$ ~/env/bin/pip install git+https://git.opensipkd.com/sugiana/pyramid-snap

Jika Anda ingin mengembangkannya maka unduh terlebih dahulu:

$ git clone https://git.opensipkd.com/sugiana/pyramid-snap
$ cd pyramid-snap
$ ~/env/bin/pip install -e .[dev]

Lakukan uji coba:

$ cd tests
$ ~/env/bin/pytest

Server

Merujuk pada dokumentasi Standar Keamanan SNAP maka client harus membuat private key dan public key. Private key digunakan client untuk meng-encrypt signature:

$ openssl genrsa -out private.pem 2048

Public key digunakan server untuk memvalidasi signature:

$ openssl rsa -in private.pem -pubout -out public.pem

Di paket ini kedua file tersebut sudah disediakan. Jalankan server uji coba:

$ cd pyramid-snap/example/server
$ ~/env/bin/pserve development.ini

Nanti dia listen di port 6543. Selanjutnya buka terminal lain untuk menjalankan client:

$ cd pyramid-snap/example/client
$ ~/env/bin/python create_va --private-file=../server/private.pem

Web server tadi adalah simulator Winpay server. Jadi kita juga bisa mengujinya dengan Winpay Client:

$ ~/env/bin/winpay_create_va --private-file=../server/private.pem \
--partner-id=1234 --customer-no=08123456789 --va-name="Iwan Gunawan" \
--amount=10000 --channel=MANDIRI \
--url=http://localhost:6543/v1.0/transfer-va/create-va

Semoga dipahami.