Skip to content

agritheory/electronic_payments

Repository files navigation

Electronic Payments

An application with electronic payments utilities for ERPNext.

Installation Guide

First, set up a new bench and substitute a path to the python version to use. Python should be 3.10 latest for version-14. These instructions use pyenv for managing environments.

bench init --frappe-branch version-14 {{ bench name }} --python ~/.pyenv/versions/3.10.13/bin/python3

Create a new site in that bench

cd {{ bench name }}
bench new-site {{ site name }} --force --db-name {{ site name }}
bench use {{ site name }}

Download apps

bench get-app payments
bench get-app erpnext --branch version-14
bench get-app electronic_payments --branch version-14 git@github.com:agritheory/electronic_payments.git 

Install the apps to your site

bench --site {{ site name }} install-app erpnext payments electronic_payments

Set developer mode in site_config.json

nano sites/{{ site name }}/site_config.json
# Add this line:
  "developer_mode": 1,

Install pre-commit:

# ~/frappe-bench/apps/electronic_payments/
pre-commit install

Add the site to your computer's hosts file to be able to access it via: http://{{ site name }}:[8000]. You'll need to enter your root password to allow your command line application to make edits to this file.

bench --site {{site name}} add-to-hosts

Launch your bench (note you should be using Node.js v18)

bench start

Optional: install a demo Company and its data to test the Electronic Payments module's functionality

bench execute 'electronic_payments.tests.setup.before_test'

To run the Stripe mock, start the docker container:

docker run --rm -it -p 12111-12112:12111-12112 stripe/stripe-mock:latest

The endpoint should be configured in the Electronic Payments Settings with the following values:

# values here / TBD

To run mypy locally:

source env/bin/activate
mypy ./apps/electronic_payments --ignore-missing-imports