57 lines
1.6 KiB
Markdown
57 lines
1.6 KiB
Markdown
# uncloud-pay
|
|
|
|
The pay module for the uncloud
|
|
|
|
- uses [etcd3](https://coreos.com/blog/etcd3-a-new-etcd.html) for storage.
|
|
- uses [Stripe](https://stripe.com/docs/api) as the payment gateway.
|
|
- uses [ldap3](https://github.com/cannatag/ldap3) for ldap authentication.
|
|
|
|
## Installation
|
|
|
|
```shell script
|
|
pip3 install -r requirements.txt
|
|
```
|
|
|
|
## Getting Started
|
|
|
|
```shell script
|
|
python ucloud_pay.py
|
|
```
|
|
|
|
## Usage
|
|
|
|
Currently handles very basic features, such as:
|
|
|
|
#### 1. Adding of products
|
|
```shell script
|
|
http --json http://[::]:5000/product/add username=your_username_here password=your_password_here specs:=@ipv6-only-vm.json
|
|
```
|
|
|
|
#### 2. Listing of products
|
|
```shell script
|
|
http --json http://[::]:5000/product/list
|
|
```
|
|
|
|
#### 3. Registering user's payment method (credit card for now using Stripe)
|
|
|
|
```shell script
|
|
http --json http://[::]:5000/user/register_payment card_number=4111111111111111 cvc=123 expiry_year=2020 expiry_month=8 card_holder_name="The test user" username=your_username_here password=your_password_here line1="your_billing_address" city="your_city" country="your_country"
|
|
```
|
|
|
|
#### 4. Ordering products
|
|
|
|
First of all, user have to buy the membership first.
|
|
|
|
```shell script
|
|
http --json http://[::]:5000/product/order username=your_username_here password=your_password_here product_id=membership pay=True
|
|
```
|
|
|
|
```shell script
|
|
http --json http://[::]:5000/product/order username=your_username_here password=your_password_here product_id=ipv6-only-vm cpu=1 ram=1 os-disk-space=10 os=alpine pay=True
|
|
```
|
|
|
|
#### 5. Listing users orders
|
|
|
|
```shell script
|
|
http --json POST http://[::]:5000/order/list username=your_username_here password=your_password_here
|
|
```
|