appuio / cloud-portal

APPUiO Cloud Portal (Web Frontend)
Apache License 2.0
5 stars 0 forks source link

"Create Billing" form #522

Closed ccremer closed 1 year ago

ccremer commented 1 year ago

Summary

As Portal user\ I want to create a new Billing entity\ So that can start consuming APPUiO resources without manual work in the backoffice

Context

A billing entity (BE) is required to generate and send invoices to the user/company. Thus, it is required even before being able to create organizations.

So far, BE were manually created and maintained by VSHN. Now it should be possible to self-service the information. There is still a manual backoffice process in the background to verify for compliance reasons, but this is out-of-scope here.

Out of Scope

Further links

Acceptance Criteria

Given I have the permission to create new billing entities
When I visit the Billing list at `/billingentities`
Then the button "Create billing address" is visible

Given I am on the Billing list at `/billingentities`
When I click on the "Create billing address" button
Then I am navigated to `/billingentities/$new`
And I see the "Create billing address" form
And the "Create billing address" form contains a legal notice <1>

Given I have completed the "Create billing address" form with valid values
When I click button "Create"
Then a new BillingEntity is saved in Kubernetes
And I am navigated back to the preview view where I originally navigated from, or to `/billingentities` as fallback.
<1> By registering a billing address, you agree that you will get charged for using VSHN products. You also agree to our [general terms and conditions](https://legal.docs.vshn.ch/legal/gtc_en.html). ### Implementation Notes * When creating a Billing Entity, a company address is required. Since there could be international users, the address should be as open as possible regarding valid values (e.g. there are addresses without house number for example) * At the time of writing, https://github.com/appuio/control-api/blob/26efed0b3fd27b2a16d9c3ac4ee30b1866b3e569/config/user-rbac/basic-user-role.yml#L17-L22 doesn't list any "create" and "update" permissions. This should be granted for this feature for the rollout but for local development you have to give it yourselves. * From a technical perspective we say "Billing Entity", this is also how the resources are called in the backend. From a users' perspective, this is too technical, we suggest calling that "Billing address".
corvus-ch commented 1 year ago

@tobru Can you please check the wording of the legal notice? Also, is it linking to the correct document?