internetee / registry

TLD Management Software
Other
45 stars 19 forks source link

Auto-invoicing #329

Closed vohmar closed 5 years ago

vohmar commented 7 years ago

to automate credit loading process for registrars it is necessary to add new settings to registrars' profile in the portal for registrars

new options in the portal for registrars. Requires new profile edit view: auto-invoicing enabled checkbox if enabled the 'low credit balance' and 'auto invoice sum' must be set electronic invoicing option: IBAN (bank account number where to send the e-invoice) - XML email option: billing email address (registrar can choose one, the other or both options for receiving the invoice) - PDF

if credit balance of the registrar falls to or below the 'low credit balance' setpoint invoice is generated in the sum of 'auto invoice sum' and sent to registrar according to the selected invoice receiving options.

The registrar can now sign auto-payment contract with its bank to fully automate the process.

Registrar users that have access to setting auto-invoicing options must have security profile billing or super (users with epp role cannot change this). The option is registrar specific ie if user1 changes the setting, user2 can change it back given that both users belong to the same registrar and have at least billing roles.

Renewed Omniva spec: https://drive.google.com/open?id=19OqNolFk_REEAiS8C6498Ax4iA-CzZTM Estonian e-invoice spec: https://media.voog.com/0000/0042/1620/files/Estonian_e-invoice_description_ver1.2_eng.pdf https://www.pangaliit.ee/arveldused/e-arve


artur-intech commented 7 years ago

@vohmar Is it clear what billing provider will be used?

vohmar commented 7 years ago
artur-intech commented 7 years ago

UI mock-up: https://gomockingbird.com/projects/2c71f5l/4gXVnC

vohmar commented 7 years ago

there is additional data required to enable electronic/xml invoicing ie IBAN. Also settings for auto invoicing, min level, autoinvoice amount.

artur-intech commented 6 years ago

@maciej-szlosarczyk Let me know once you're close to this ticket. I will review what has been done before.

artur-intech commented 6 years ago

@vohmar I still think it makes more sense if I do it.

maciej-szlosarczyk commented 6 years ago

Assigning back to Artur as I've been doing duplicate work for the last 3 days 😞

artur-intech commented 6 years ago

@vohmar

electronic invoicing option: IBAN (bank account number where to send the e-invoice) - XML email option: billing email address (registrar can choose one, the other or both options for receiving the invoice) - PDF

To send a PDF invoice we can either implement it ourselves, or delegate Omniva ("email" delivery method. Though it is not explicitly stated, that a customer will get a PDF invoice to his/her email. Perhaps they just send some link to their web UI. I guess it's worth double-check this). The simplest way is to delegate, but how are the things from financial perspective? If we need to pay for every PDF invoice sent, it may be worth implementing it ourselves, in which case we will have full control.

Omniva allows the following delivery methods:

How about allowing them all, except "post" (regular mail)?

artur-intech commented 6 years ago

It seems Omniva extends e-invoice spec a bit. @vohmar Is there any newer version available? The latest is 21/02/2017. I can't find anything useful on their website.

artur-intech commented 6 years ago

@vohmar Could you describe the case in which I, as a registrar, might need to choose more than one delivery method? How often it will be used?

I thought usually you prefer to have some single point where you collect invoices.

artur-intech commented 6 years ago

Admin provides e-invoice operator settings in admin area

I think there is no need to make it as a setting in admin area. application.yml might work better, given how rare we need to change it.

artur-intech commented 6 years ago

Should an admin user be able to edit registrar's e-invoice provider?

artur-intech commented 6 years ago

Any defaults for "low credit balance" and "auto invoice sum"?

artur-intech commented 6 years ago

Also, how about constraining min/max "low credit balance" and "auto invoice sum"?

"low credit balance" should be at least 0.

When it comes to "auto invoice sum", there might be some min amount as well, especially if service provider bills us per transaction.

@vohmar Thoughts?

vohmar commented 6 years ago

Omniva allows the following delivery methods: INTERNET_BANK – an internet bank POST –mail EMAIL – e-mail PORTAL – using eAK How about allowing them all, except "post" (regular mail)?

Lets start with INTERNET_BANK only solution. We already provide an option to send pdf invoice to email. We might add an option to send xml version as well (lets implement this later)

It seems Omniva extends e-invoice spec a bit. @vohmar Is there any newer version available? The latest is 21/02/2017. I can't find anything useful on their website.

found only this link to Panga Liit page at Omniva: https://www.pangaliit.ee/arveldused/e-arve and this https://www.omniva.ee/public/files/failid/juhend-arvekeskus-ehr-ari-est-ee-2017.pdf

Could you describe the case in which I, as a registrar, might need to choose more than one delivery method? How often it will be used?

To save accountant from needing to download the invoice pdf version from the bank for archiving and accounting purposes. Registrar can choose e-invoice to the bank delivery method and later download the invoice from registrar's portal or send the prf to an accountants email.

Admin provides e-invoice operator settings in admin area

I think there is no need to make it as a setting in admin area. application.yml might work better, given how rare we need to change it.

The endgoal here is to solve all the configuration option in the portal for admins. So we would like to make all the configartion option available in admin. But for the purpose of MVP and saving time we can solve the initial version with yml file based config option

Should an admin user be able to edit registrar's e-invoice provider?

yes

Any defaults for "low credit balance" and "auto invoice sum"?

no

artur-intech commented 6 years ago

if credit balance of the registrar falls to or below the 'low credit balance'

Do we need to somehow notify registrars when such thing happens? Say, by email?

artur-intech commented 6 years ago

I meant newer version of Omniva spec https://drive.google.com/file/d/0ByE2mp1jZ-ZaenhSbnEtNFVwRTBiZHp4Ni1zZWlFemVpSlNN/view, not e-invoice.

artur-intech commented 6 years ago

Requires #972

vohmar commented 6 years ago

Do we need to somehow notify registrars when such thing happens? Say, by email?

not until someone requests it. Not needed for MVP

vohmar commented 6 years ago

I meant newer version of Omniva spec

3.6 is the latest version

artur-intech commented 5 years ago

1101

vohmar commented 5 years ago

updated omniva spec in description. New version 4.3.

artur-intech commented 5 years ago

Do we really need feature flag for this? If a registrar has not configured this feature, it will be turned off anyway.

vohmar commented 5 years ago

the flag is nice to have feature, not absolutely necessary as I cannot imagine the reason for registry for quickly disabling this option for everyone.

vohmar commented 5 years ago
artur-intech commented 5 years ago

Added:

vohmar commented 5 years ago

the pdf invoice of regsitrar portal and the details on e-invoice still differ ie. seller contact email, phone number and url, but functionality it self works in the limits provided by test systems. Moving on to test against Omniva's production env