You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

56 lines
1.5 KiB

3 years ago
# ucloud-pay
The pay module for the ucloud
3 years ago
- uses [etcd3](https://coreos.com/blog/etcd3-a-new-etcd.html) for storage
- uses [Stripe](https://stripe.com/docs/api) as the payment gateway
3 years ago
## Getting started
3 years ago
```
git clone git@code.ungleich.ch:ucloud/ucloud-pay.git
cd uclou-pay
cp env.sample .env
```
Now, modify the params in .env file as per your setup and run.
```
pipenv shell
pipenv install
python ucloud_pay.py
```
3 years ago
Currently handles very basic features, such as:
3 years ago
#### 1. Adding of products
3 years ago
```
3 years ago
curl http://ucloud-pay-server:5000/product/add -XPOST --data '-name mravi --realm test --seed testseed --product-name "IPV6 VPN" --product-description="YEARLY IPV6 subscription" --product-type=recurring --product-recurring-period=year --product-price=12000 --product-minimum-subscription-period=year'
3 years ago
```
3 years ago
#### 2. Listing of products
3 years ago
```
curl http://ucloud-pay-server:5000/product/list
```
3 years ago
#### 3. Ordering products
```
curl http://ucloud-pay-server:5000/product/order -XPOST --data '-name username --realm user_realm --seed user_seed --product-id 343sdf3e2423
```
#### 4. Listing users orders
```
curl http://ucloud-pay-server:5000/order/list -XPOST --data '-name username --realm user_realm --seed user_seed
```
#### 5. Registering user's payment method (credit card for now using Stripe)
```
curl http://ucloud-pay-server:5000/user/register_payment -XPOST --data '-name username --realm user_realm --seed user_seed --card_number 4111111111111111 --cvc 123 --expiry_year 2020 --expiry_month 8 --card_holder_name "The test user"
```