# 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 #### 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 ```