class: center, middle # IETF Hackathon ## One Tax API IETF 112 1-5 November 2021 Online --- # Hackathon Plan
- Determine standards needed to enable secure and efficient taxation of e-commerce - Motivated by [introduction of taxes on digital payments in Kenya](https://www.ey.com/en_gl/tax-alerts/kenya-introduces-vat-regulations-on-supply-of-digital-services) - Minimise need for double registration for small to moderate transactions - A standards tax API in Kenya and African countries
--- # What got done - Literature review - Initial design specifications - Learned a little more about Go from [Mofizur Rahman](https://dev.to/moficodes/build-your-first-rest-api-with-go-2gcj) - [Prototype API to look up tax rates](https://github.com/OneTaxApi/location-taxrate-api) using [ISO-3166 codes](https://www.iso.org/iso-3166-country-codes.html) --- ### Problem African and Asian countries are not covered by Stripe API ### Solution Provide an API that can provide a solution to most of these countries --- ## Case study (Stripe taxes) Stripe automates tax collection and calculation. This helps the collection of the right amount and access reports necessary for return filing. __Problem Solved by stipe tax__ - Tax Localization - based on customer location - Tax ID validation - automatic validation of VAT ids - Filing and remittance - provides reports so you can easily file on your own - Coverage - all US states over 30 countries mostly in Europe and Canada. --- ### Design 1. Tax Rates - A resource to allow you to define any number of tax rates and apply them to invoices and subscriptions. __Attributes__ - id (Integer) - unique identifier - type (String) - tax type eg `vat`, `digitaltax` - active (Boolean) - determine is active or inactive - country ( ISO code) - 2 letter country code - name (String) - Display name eg 'vat' - percentage (decimal) - rate percentage - state(string) - ISO code - created_at(timestamp) - updated_at(timestamp) --- # What we learned
- [Stripe has a tax rate lookup](https://stripe.com/docs/billing/taxes/tax-rates) - A number of bodies to standardize payments - [EMVCO](https://www.emvco.com/emv-technologies/src/) - [PCI](https://www.pcisecuritystandards.org/) - [OECD has taxation guidelines](https://www.oecd.org/ctp/international-vat-gst-guidelines-9789264271401-en.htm) - [Business to consumer taxes for e-commerce are an OECD priority](https://www.oecd.org/tax/beps/beps-actions/action1/) - Relevant RFCs include [5280](https://datatracker.ietf.org/doc/html/rfc5280) used in [3D Secure](https://en.wikipedia.org/wiki/3-D_Secure) and [Secure Electronic Transaction](https://en.wikipedia.org/wiki/Secure_Electronic_Transaction) --- # What Next - More complete API specification - Add example APIs for payment processor to tax authority payments - Use full ISO 3166 codes for sub country level taxation - Consider security and privacy aspects in more detail - Try API implementations in other programming languages --- # Wrap up --- .left-column[ #### Team members: - Benson Muite ] .right-column[ #### Helpful Feedback: - Ali Hussain ] .left-column[ #### Newcomers: - Moses Gathuku ] .right-column[ #### Notes and contacts: - benson_muite at emailplus.org - mosesgathuku95 at gmail.com ]