Commit Graph

66 Commits

Author SHA1 Message Date
Raphael Michel
808ccfee75 Bank import: useful matching of negative transactions
Negative transactions are never matched automatically, which does not
change. However, when matching them manually, a negative payment was
created, which does not make much sense. Now, if a negative payment is
manually matched, the system checks whether:

a) There is a manual refund in pending state. In this case, the refund
   will be marked as done.

b) There is a bank transfer payment of the same amount, in which case
   this is handled like a credit card chargeback (i.e. notification on
   the dashboard, ...)

c) Otherwise, an error will be returned asking the user to create a
   refund object manually.
2019-11-20 18:35:15 +01:00
Martin Gross
70e95b42fa Add manual order-matching field for duplicate bankimport transactions (#1461)
* Add manual order-matching field for duplicate bankimport transactions

* Only show matching-field for already matched transactions - not for errored ones.
2019-10-29 11:54:36 +01:00
Raphael Michel
604c31c6e2 Bank transfer: Allow to manually accept payments of all amounts 2019-01-28 08:49:19 +01:00
Raphael Michel
8abfbba9d0 Refactor cancelling positions and orders in the data model (#1088)
- [x] Data model
- [x] display in order view in backend
- [x] review all usages of OrderPositions.objects
- [x] review all usages of order.positions
- [x] review all other model usages
- [x] review plugins
- [x] plugins backwards-compatible API?
- [x] decide on way forward for REST API
- [x] need to cancel fees
- [x] tests
- [ ] plugins
  - [ ] gdpr
  - [ ] reports
- [x] docs
2019-01-10 16:52:34 +01:00
Raphael Michel
ca6b3badde Fix reference to removed field 2018-11-05 21:20:17 +01:00
Raphael Michel
94be46ffdb Fix #978 -- Allow to split names (#1049)
- [x] attendee names
- [x] Invoice address names
- [x] Data migration
- [x] API serializers
  - [x] orderposition
  - [x] cartposition
  - [x] invoiceaddress
  - [x] checkinlistposition
- [x] position API search
- [x] invoice API search
- [x] business/individual required toggle
- [x] Split columns in CSV exports
- [x] ticket editor
- [x] shredder
- [x] ticket/invoice sample data
- [x] order search
- [x] Handle changed naming scheme
- [x] tests
- [x] make use in:
  - [x] Boabee
  - [x] Certificate download order
  - [x] Badge download order
  - [x] Ticket download order
- [x] Document new MySQL requirement
- [x] Plugins
2018-11-05 15:43:21 +01:00
Raphael Michel
afd766999c Upgrade to Django 2.1 (#710)
* Upgrade to Django 2.0

* more models

* i18n foo

* Update setup.py

* Fix Sentry exception PRETIXEU-JC

* Enforce slug uniqueness

* Import sorting

* Upgrade to Django 2.1

* Travis config

* Try to fix PostgreSQL failure

* Smaller test matrix

* staticfiles→static

* Include request in all authenticate() calls
2018-08-06 12:48:46 +02:00
Raphael Michel
18a378976b Fix #571 -- Partial payments and refunds 2018-08-06 12:24:36 +02:00
Raphael Michel
a284e0c2f7 Add auditable superuser mode (#824)
* Remove is_superuser everywhere

* Session handling

* List of sessions, relative timeout

* Absolute timeout

* Optionally pseudo-force audit comments

* Fix failing tests

* Add tests

* Add docs

* Rebsae migration

* Typos

* Fix tests
2018-03-28 14:16:58 +02:00
Raphael Michel
3c3e59e932 Refs #99 -- Improve support for currencies with less than 2 decimal places (#783)
* Refs #99 -- Fix stripe support for zero-decimal currencies

* Add new money formatting method

* Force decimal places in many places

* Locale-aware currency rendering

* Fix currencies in more places

* More currency fixes
2018-02-26 10:46:07 +01:00
Mohit Jindal
db24bd4d78 Fix #674 -- Assigning bank transactions with a dash in the event slug (#744) 2018-01-15 14:10:53 +01:00
Raphael Michel
497679284a Bank CSV import: Allow dealing with files of more than a few hundred lines during first import 2017-12-07 18:29:08 +01:00
Raphael Michel
cb6f6247fd Marking orders as paid now ignores waiting list 2017-10-24 12:48:38 +02:00
Tobias Kunze
244b767f8f Allow markdown rendering in transaction comments. (#621)
This commit allows transaction comments to display newlines and URLs in
a useful way, helping when additional data (such as a reference to a
ticket system or a longer discussion) is required.
This PR also prevents pretix from having to bring its own chat system ;)
2017-09-25 12:25:32 +03:00
Raphael Michel
4928234785 Banktransfer: Allow mt940 files to have the .sta extension 2017-08-24 18:13:26 +02:00
Raphael Michel
83df4451e6 Fix #491 -- Search order by invoice number 2017-07-18 11:14:51 +02:00
Raphael Michel
8123effa65 Add sub-events and relative date settings (#503)
* Data model

* little crud

* SubEventItemForm etc

* Drop SubEventItem.active, quota editor

* Fix failing tests

* First frontend stuff

* Addons form stuff

* Quota calculation

* net price display on EventIndex

* Add tests, solve some bugs

* Correct quota selection in more places, consolidate pricing logic

* Fix failing quota tests

* Fix TypeError

* Add tests for checkout

* Fixed a bug in QuotaForm

* Prevent immutable cart if a quota was removed from an item

* Add tests for pricing

* Handle waiting list

* Filter in check-in list

* Fixed import lost in rebase

* Fix waiting list widget

* Voucher management

* Voucher redemption

* Fix broken tests

* Add subevents to OrderChangeManager

* Create a subevent during event creation

* Fix bulk voucher creation

* Introduce subevent.active

* Copy from for subevents

* Show active in list

* ICal download for subevents

* Check start and end of presale

* Failing tests / show cart logic

* Test

* Rebase migrations

* REST API integration of sub-events

* Integrate quota calculation into the traditional quota form

* Make subevent argument to add_position optional

* Log-display foo

* pretixdroid and subevents

* Filter by subevent

* Add more tests

* Some mor tests

* Rebase fixes

* More tests

* Relative dates

* Restrict selection in relative datetime widgets

* Filter subevent list

* Re-label has_subevents

* Rebase fixes, subevents in calendar view

* Performance and caching issues

* Refactor calendar templates

* Permission tests

* Calendar fixes and month selection

* subevent selection

* Rename subevents to dates

* Add tests for calendar views
2017-07-11 13:56:00 +02:00
Raphael Michel
ee6d0af795 Update translations 2017-07-02 17:26:32 +02:00
Raphael Michel
d446191cf4 Organizer-level bank import 2017-06-27 12:31:45 +02:00
Raphael Michel
b2dfd8ab11 Bankimport: Force re-annotation for badly parsed files 2017-05-30 18:43:53 +02:00
Raphael Michel
bf9987e05f Proper localization of Decimals 2017-02-01 18:46:04 +01:00
Raphael Michel
7120e95d2a Fix #192 -- Disable bank import after last date of payments 2017-01-14 16:12:25 +01:00
Tobias Kunze
5e3087341c Bankimport: Order transactions by their job's date (#362)
Leads to having the most recent unresolved transfers on top instead of
in between.
2016-12-17 11:44:31 +01:00
Brandon
d1357ed5c0 Fix #359 -- Specific error message for empty bank import. (#363)
* added specific error message for no file uploaded for empty bank import

added return statements to each if/elif/else for importing bank data file

fixed styling according to flake8

* fixed if else ordering
2016-12-17 11:43:47 +01:00
Tobias Kunze
b64fef4b08 Fix #327 -- Problems with banktransfer filtering (#328)
* Filter banktransfer comments aswell

* Make the filtering button actually filter bank imports

* Show empty list if search matches nothing
2016-11-22 13:58:01 +01:00
Raphael Michel
503f6dd06f Use consistent flake8 settings everywhere and fix flake8 issues 2016-10-13 22:57:57 +02:00
Tobias Kunze
9db333bf80 Transactiontask (#268)
* Introduce TransactionAwareTask

As described in
https://blog.hypertrack.io/2016/10/08/dealing-with-database-transactions-in-django-celery/

* Use TransactionAwareTask instead of countdown

… to prevent race conditions when using a newly created object in a
task.
2016-10-10 16:38:06 +02:00
Raphael Michel
d43d6f485b Fix #258 -- Add a comment field to bank transactions 2016-10-08 20:18:35 +02:00
Raphael Michel
79e1b6cb83 Bankimport: Add a delay before starting the background task 2016-09-24 17:27:18 +02:00
Raphael Michel
f27f98c769 Banktransfer: Do not allow concurrent import jobs 2016-09-21 23:03:55 +02:00
Raphael Michel
84fd7cb166 Merge remote-tracking branch 'remotes/flaviabastos/187_unify_canceled_spelling' 2016-09-21 19:07:15 +02:00
Flavia Bastos
8ef6439c44 Unify spelling of 'canceled'
Issue 187
Remove typeahead JS file.
2016-09-21 10:35:41 -06:00
Raphael Michel
1faacef9d4 Always process tasks through celery (#245) 2016-09-21 10:38:31 +02:00
Raphael Michel
4319082139 Banktransfer: Fixed retry button of duplicate transactions 2016-09-19 16:54:08 +02:00
Raphael Michel
074e7648b9 Bankimport: Fixed another typerror 2016-09-13 18:07:22 +02:00
Tobias Kunze
a073486c3e Minor changes in translations 2016-09-09 19:59:46 +02:00
Raphael Michel
dae5d859db Banktransfer: Big import refactoring 2016-09-08 20:43:05 +02:00
Raphael Michel
ef9c78df65 Banktransfer: Completely remove HBCI support 2016-09-07 23:15:43 +02:00
Tobias Kunze
3c8f9f5a62 Catch and display mail sending errors (#215) 2016-08-30 16:49:52 +02:00
Raphael Michel
1cb6c0e3da Add more tolerance about handwriting in order code detection 2016-08-29 23:21:55 +02:00
Raphael Michel
72adbfb3bd Banktransfer: Correct matching of longer order codes 2016-08-16 14:21:07 +02:00
Raphael Michel
fac9926542 Fixed error introduced in ff3c5dc 2016-08-14 21:05:18 +02:00
Raphael Michel
ff3c5dc6a4 Banktransfer: Reduce number of SQL queries during CSV import 2016-08-14 20:41:34 +02:00
Raphael Michel
1bdf332afd Disable HBCI support
It does not work currently and it raises security and legal questions
that need to be answered first.
2016-06-13 09:18:44 +02:00
Raphael Michel
d133d2abff Removed CleanerVersion layer [backwards-incompatible!] 2015-12-12 13:08:33 +01:00
Raphael Michel
705d8bd931 A better MT940 has become available on PyPI 2015-10-18 19:05:21 +02:00
Raphael Michel
2e9157cbef Removed unused imports 2015-10-05 11:24:00 +02:00
Raphael Michel
c921ad9fd7 Added unit test for bank CSV import 2015-09-08 20:51:02 +02:00
Raphael Michel
9ab6cc52c7 Refs #40 -- Removed Python 3.2/3.3 support 2015-08-22 14:23:11 +02:00
Raphael Michel
3b17434ebf Banktransfer: Do not warn about outgoing transfers without an order code 2015-08-21 11:39:19 +02:00