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 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113
|
Source: tryton-modules-account-payment-stripe
Section: python
Priority: optional
Maintainer: Debian Tryton Maintainers <team+tryton-team@tracker.debian.org>
Uploaders: Mathias Behrle <mathiasb@m9s.biz>
Build-Depends: debhelper-compat (= 13),
dh-python,
jdupes,
python3-all,
python3-setuptools,
python3-sphinx
Standards-Version: 4.7.0
Homepage: https://www.tryton.org/
Vcs-Git: https://salsa.debian.org/tryton-team/tryton-modules-account-payment-stripe.git
Vcs-Browser: https://salsa.debian.org/tryton-team/tryton-modules-account-payment-stripe
Rules-Requires-Root: no
Package: tryton-modules-account-payment-stripe
Architecture: all
Depends: python3-stripe,
tryton-modules-account (>= ${version:major}),
tryton-modules-account-payment (>= ${version:major}),
tryton-modules-party (>= ${version:major}),
tryton-server (>= ${version:major}),
${API},
${misc:Depends},
${python3:Depends},
${sphinxdoc:Depends}
Description: Tryton application platform - account payment stripe module
Tryton is a high-level general purpose application platform. It is the base
of a complete business solution as well as a comprehensive health and hospital
information system (GNUHealth).
.
The account_payment_stripe module allows one to receive payments from
`Stripe`. It uses `Stripe.js and Stripe Elements` in a checkout form to
handle `Setup Intent` and `Payment Intent` by card.
.
Note: The checkout form loads Javascript from stripe.com. It can be considered
a potential privacy breach by fetching data from an external website
at runtime.
Nevertheless stripe.com claims:
To be PCI compliant, you must load Stripe.js directly from
https://js.stripe.com.
So please use this module at your discretion.
.
- Stripe: https://stripe.com/
- Stripe.js and Stripe Elements: https://stripe.com/docs/web
- Setup Intent: https://stripe.com/docs/api/setup_intents
- Payment Intent: https://stripe.com/docs/api/payment_intents
- PCI compliance:
https://stripe.com/docs/security/guide#validating-pci-compliance
.
Account
=======
.
The Account stores the information about the Stripe account like the secret
key, the publishable key and the webhook signing secret.
.
The account's webhook endpoint is the URL used by stripe webhooks. For
additional security, the Stripe's requests signature can be verified if the
webhook `signing secret` is set on the Account.
If no webhook is setup, a cron task fetches the new events.
.
- webhooks: https://stripe.com/docs/webhooks
- signing secret: https://stripe.com/docs/webhooks/signatures
.
Customer
========
.
The customer allows to register parties as Stripe customers.
The checkout button opens the Stripe checkout form.
.
A cron task runs every hour to create new customers on Stripe and another to
delete them if they are inactivated.
.
Journal
=======
.
The journal has a new field for the Stripe account.
.
Payment
=======
.
The payment has also a checkout button which opens the Stripe checkout form.
A payment can be processed off-session using a source or payment method
from the customer.
In case the payment method requires authorization, an email is sent to the
party with a link to the checkout form.
In case of error, it has also new fields which display the error messages.
.
A cron task runs every 15 minutes to charge each processing payment.
.
The capture box can be unchecked to only authorize on processing and capture
the amount in a second step.
.
If the payment is disputed, it will be updated at the closure of the dispute.
.
It is possible to partially or completely refund a payment.
.
- https://stripe.com/docs/sources
- https://stripe.com/docs/payments/payment-methods
.
Configuration
=============
.
The account_payment_stripe module uses the section `account_payment_stripe` to
retrieve some parameters:
.
- sources_cache: defines the duration in seconds the sources are kept in the
cache. The default value is `15 = 60`.
.
- max_network_retries: defines the maximum number of retries the Stripe
library may perform. The default value is `3`.
|