marketing

Marketing materials (presentations, posters, flyers)
Log | Files | Refs

merchant.tex (7434B)


      1 \documentclass[aspectratio=169,t]{beamer}
      2 \input taler-macros
      3 
      4 \newcommand{\TITLE}{NEXT \\ GENERATION \\ INTERNET}
      5 \newcommand{\SUB}{GNU Taler for Developers}
      6 \newcommand{\AUTHOR}{Christian Grothoff}
      7 \newcommand{\SPEAKER}{Christian Grothoff}
      8 \newcommand{\INST}{Bern University of Applied Sciences}
      9 \newcommand{\DATE}{COSIN'24}
     10 
     11 % Do not edit this part
     12 \title{\TITLE}
     13 \subtitle{\SUB}
     14 \date{\DATE}
     15 \author[\SPEAKER]{\AUTHOR}
     16 \institute{\INST}
     17 
     18 \begin{document}
     19 
     20 \begin{frame}[plain]
     21 \maketitle
     22 \end{frame}
     23 
     24 
     25 \begin{frame}{What is Taler?}
     26   \framesubtitle{\url{https://taler.net/en/features.html}}
     27   \noindent
     28 Taler is
     29   \vfill
     30   \begin{itemize}
     31     \item a Free/Libre software \emph{payment system} infrastructure project
     32     \item ... with a surrounding software ecosystem
     33     \item ... and a company (Taler Systems S.A.) and community that wants to deploy it
     34       as widely as possible.
     35   \end{itemize}
     36   \vfill
     37 \noindent
     38 However, Taler is
     39   \begin{itemize}
     40     \item \emph{not} a currency
     41     \item \emph{not} a long-term store of value
     42     \item \emph{not} a network or instance of a system
     43     \item \emph{not} decentralized
     44     \item \emph{not} based on proof-of-work or proof-of-stake
     45     \item \emph{not} a speculative asset / ``get-rich-quick scheme''
     46   \end{itemize}
     47   \vfill
     48 \end{frame}
     49 
     50 
     51 \begin{frame}{Taler overview}
     52 \begin{center}
     53 \begin{tikzpicture}
     54  \tikzstyle{def} = [node distance= 4em and 7em, inner sep=1em, outer sep=.3em];
     55  \node (origin) at (0,0) {};
     56  \node (exchange) [def,above=of origin,draw]{Exchange};
     57  \node (customer) [def, draw, below left=of origin] {Customer};
     58  \node (merchant) [def, draw, below right=of origin] {Merchant};
     59  \node (auditor) [def, draw, above right=of origin]{Auditor};
     60  \tikzstyle{C} = [color=black, line width=1pt]
     61  \draw [<-, C] (customer) -- (exchange) node [midway, above, sloped] (TextNode) {withdraw coins};
     62  \draw [<-, C] (exchange) -- (merchant) node [midway, above, sloped] (TextNode) {deposit coins};
     63  \draw [<-, C] (merchant) -- (customer) node [midway, above, sloped] (TextNode) {spend coins};
     64  \draw [<-, C] (exchange) -- (auditor) node [midway, above, sloped] (TextNode) {verify};
     65 \end{tikzpicture}
     66 \end{center}
     67 \end{frame}
     68 
     69 
     70 \begin{frame}{Architecture of Taler}
     71 \begin{center}
     72   \includegraphics[width=0.8\textwidth]{operations.png}
     73 \end{center}
     74 \end{frame}
     75 
     76 
     77 \begin{frame}{Merchant architecture}
     78 \begin{center}
     79 \begin{tikzpicture}
     80  \tikzstyle{def} = [node distance= 3.5em and 2em, inner sep=1em, outer sep=.3em];
     81  \node (origin) at (0,0) {};
     82  \node (backend) [def,above=of origin,draw]{{\tiny taler-merchant-httpd}};
     83  \node (frontend) [def,above left=of backend,draw]{{\tiny E-commerce Frontend}};
     84  \node (backoffice) [def,above right=of backend,draw]{Backoffice};
     85  \node (postgres) [def, draw, below=of backend] {Postgres};
     86 
     87  \tikzstyle{C} = [color=black, line width=1pt]
     88  \draw [->, C] (frontend) -- (backend) node [midway, above, sloped] (TextNode) {REST API};
     89  \draw [->, C] (backoffice) -- (backend) node [midway, above, sloped] (TextNode) {REST API};
     90  \draw [<->, C] (backend) -- (postgres) node [midway, right] (TextNode) {SQL};
     91 \end{tikzpicture}
     92 \end{center}
     93 \end{frame}
     94 
     95 
     96 \begin{frame}[fragile]{GNU Taler Merchant Backend}{Installation}
     97 Add a file {\tt /etc/apt/sources.list.d/taler.list}:
     98 \begin{verbatim}
     99 deb [signed-by=/etc/apt/keyrings/taler-systems.gpg] \
    100   https://deb.taler.net/apt/debian bookworm main
    101 deb [signed-by=/etc/apt/keyrings/taler-systems.gpg] \
    102   https://deb.taler.net/apt/ubuntu/ noble taler-noble
    103 \end{verbatim}
    104 And import the key and install the package:
    105 \begin{verbatim}
    106 # wget -O /etc/apt/keyrings/taler-systems.gpg \
    107     https://taler.net/taler-systems.gpg
    108 # apt update; apt install taler-merchant
    109 \end{verbatim}
    110 \end{frame}
    111 
    112 
    113 \begin{frame}[fragile]{GNU Taler Merchant Backend}{Configuration}
    114 Setup database and start the service:
    115 \begin{verbatim}
    116 # taler-merchant-dbconfig
    117 # systemctl enable --now taler-merchant.target
    118 \end{verbatim}
    119 \begin{itemize}
    120 \item Listens by default on 9966
    121 \item Change ``[merchant] SERVE=unix'' to listen on
    122   UNIX domain socket
    123 \item Reverse proxy configuration templates are in
    124   {\tt /etc/\{nginx,apache\}/sites-available/}.
    125 \end{itemize}
    126 \end{frame}
    127 
    128 
    129 \begin{frame}[fragile]{GNU Taler Merchant Backend}{Authentication}
    130   Initially, the service will have no password!
    131   \begin{itemize}
    132   \item Visit {\tt http://localhost:9966/} with a browser.
    133   \item Setup default (admin) account and credentials!
    134   \end{itemize}
    135   In the REST API, the bearer token is always sent as:
    136 \begin{verbatim}
    137 Authorization: Bearer secret-token:$TOKEN
    138 \end{verbatim}
    139 See also:
    140 \begin{center}
    141   \url{https://www.rfc-editor.org/rfc/rfc8959.pdf}
    142 \end{center}
    143 \end{frame}
    144 
    145 
    146 \begin{frame}[fragile]{GNU Taler Merchant Backend}{Test}
    147 \vfill
    148 \begin{verbatim}
    149 $ wget http://localhost:9966/config
    150 \end{verbatim}
    151 \vfill
    152 \end{frame}
    153 
    154 
    155 \begin{frame}{GNU Taler Merchant Backend}{REST API}
    156 \vfill
    157 \begin{center}
    158 \url{https://docs.taler.net/core/api-merchant.html}
    159 \end{center}
    160 \vfill
    161 \end{frame}
    162 
    163 
    164 \begin{frame}{GNU Taler Merchant Backend}{Key concepts}
    165   \begin{itemize}
    166   \item Instances
    167   \item Orders
    168   \item Inventory
    169   \item Templates
    170   \item Bank accounts
    171   \item OTP devices
    172   \item Webhooks
    173   \end{itemize}
    174 \end{frame}
    175 
    176 
    177 \begin{frame}{GNU Taler Merchant Backend}{Ongoing developments}
    178   \begin{itemize}
    179   \item Token families
    180   \begin{itemize}
    181   \item Subscription
    182   \item Discount
    183   \end{itemize}
    184   \item Donation receipts
    185   \end{itemize}
    186 \end{frame}
    187 
    188 
    189 \begin{frame}{Other components for merchants}
    190   \begin{itemize}
    191   \item Point of sale app
    192   \item {\tt taler-mdb}
    193   \item WooCommerce (WordPress) plugin
    194   \item Joomla! plugin
    195   \item Adobe E-commerce (Magento) plugin
    196   \end{itemize}
    197 \end{frame}
    198 
    199 
    200 \begin{frame}{Other components}
    201   \begin{itemize}
    202   \item Wallet app(s)
    203   \item Auditor
    204   \item Challenger
    205   \item Sync
    206   \item GNU Anastasis
    207   \item Twister
    208   \item libeufin
    209   \end{itemize}
    210 \end{frame}
    211 
    212 
    213 \begin{frame}{Tutorials}
    214   \begin{itemize}
    215   \item Merchant payment processing: \url{https://docs.taler.net/taler-merchant-api-tutorial.html}
    216   \item Regional/event currency setup: \url{https://docs.taler.net/libeufin/regional-automated-manual.html}
    217   \item Video tutorials: \url{https://tutorials.taler.net/}
    218   \item Support forum: \url{https://ich.taler.net/}
    219   \end{itemize}
    220 \end{frame}
    221 
    222 
    223 \begin{frame}{Funding}
    224   \vfill
    225   \begin{center}
    226   \url{https://nlnet.nl/propose}
    227   \end{center}
    228   \vfill
    229   Candidates that passed 1st round from April 1st submission proposed:
    230   \begin{itemize}
    231   \item Some more integrations (frameworks, ERP)
    232   \item Merchant implementation (?)
    233   \item Improvements to wallet usability
    234   \end{itemize}
    235   \vfill
    236 \end{frame}
    237 
    238 
    239 
    240 % This should be last...
    241 \begin{frame}{Acknowledgements}
    242 
    243   \begin{minipage}{0.45\textwidth} \ \\
    244     {\tiny Funded by the European Union (Project 101135475).}
    245 
    246     \begin{center}
    247       \includegraphics[width=0.5\textwidth]{bandera.jpg}
    248     \end{center}
    249   \end{minipage}
    250   \hfill
    251   \begin{minipage}{0.45\textwidth}
    252     {\tiny Funded by SERI (HEU-Projekt 101135475-TALER).}
    253 
    254     \begin{center}
    255       \includegraphics[width=0.65\textwidth]{sbfi.jpg}
    256     \end{center}
    257   \end{minipage}
    258 
    259   \vfill
    260 
    261   {\tiny
    262 
    263     Views and opinions expressed are however those of the author(s) only
    264     and do not necessarily reflect those of the European Union. Neither the
    265     European Union nor the granting authority can be held responsible for
    266     them.
    267 
    268   }
    269 \end{frame}
    270 
    271 \end{document}