blob: be673fb16c8fec7af017ab54357d89d790088caf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
|
About
=====
This is the GNU Taler merchant backend. It provides the logic that should run
at every GNU Taler merchant. The GNU Taler merchant is a RESTful backend that
can be used to setup orders and process payments. This component allows
merchants to receive payments without invading the customers' privacy. Of
course, this applies mostly for digital goods, as the merchant does not need
to know the customer's physical address.
A general-purpose merchant back-office single-page (HTML/JavaScript)
application is also included (alas, the source code for it is in another Git
repository).
This merchant backend must be combined with a merchant frontend, such as
an e-commerce application. You can find a WooCommerce plugin, a snack
machine integration (taler-mdb) and various demonstrator front-ends at
https://git.taler.net/.
Joining GNU
===========
This is a GNU program, developed by the GNU Project and part of the
GNU Operating System. If you are the author of an awesome program and
want to join us in writing Free Software, please consider making it an
official GNU program and become a GNU maintainer. You can find
instructions on how to do so at http://www.gnu.org/help/evaluation.
We are looking forward to hacking with you!
Dependencies:
=============
Build tools for compiling Taler merchant from source:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- gcc or clang
- autoconf >= 2.69 (building from git)
- automake >= 1.11.1 (building from git)
- recutils >= 1.0 (building from git)
- libtool >= 2.2
- makeinfo >= 4.8
- make[*3]
- pkgconf or pkg-config
- sphinx
- sphinx-rtd-theme
- sphinx-multiversion
Direct dependencies
~~~~~~~~~~~~~~~~~~~
These are the direct dependencies for running a Taler exchange:
- GNU Taler exchange >= 0.14.0
- PostgreSQL >= 15.0
- libqrencode
Project structure
=================
src/backend/
contains the "backend", a C piece of software which implements crypto routines
and communication with the 'exchange'
src/backenddb/
contains the database interactions (for now only PostgreSQL)
src/lib/
contains a C API to talk to the REST API of merchant backend
src/util/
common utility functions
src/bank/
utility functions to talk to the Taler bank revenue API to
reconcile transactions
src/merchant-tools/
contains helper programs to setup or manipulate the merchant backend
src/testing/
contains test cases for the merchant backend
doc/
contains documentation files, like TeXinfo
contrib/
contains the single-page-app (Web interface) as a submodule,
as well as CI/CD logic.
|