1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-10 21:22:58 +01:00
Commit Graph

187 Commits

Author SHA1 Message Date
Benjamin Beganović
ae88d5e08e php-cs-fixer format 2020-11-25 15:19:52 +01:00
Benjamin Beganović
169e5ba93e support for checking requirements based on gateway 2020-11-25 14:38:49 +01:00
Benjamin Beganović
fca1d94afe Support for SYSTEM_LOG_TYPE in:
- Authorize.net
- Stripe
- PayPal
2020-11-16 13:36:29 +01:00
Benjamin Beganović
7f3c4ada5a Merge remote-tracking branch 'upstream/v5-develop' into v2-frontend-refactor 2020-11-01 19:26:43 +01:00
Benjamin Beganović
1ae2649be6 Stripe ACH authorization & verification 2020-11-01 18:47:48 +01:00
Benjamin Beganović
7d50430a9e Stripe with credit card:
- Remove createPaymentData from StripePaymentDriver
2020-11-01 16:37:41 +01:00
Benjamin Beganović
d2e677cb9d Merge remote-tracking branch 'origin/v5-stripe-backend-refactor' into v2-frontend-refactor 2020-11-01 14:49:11 +01:00
Benjamin Beganović
dab59138cc StripePaymentDriver:
- Added attach() method for attaching payment method to Stripe customer
- getStripeMethod() for getting method information out of Stripe
2020-10-28 16:31:47 +01:00
David Bomba
9aeb2d7a5b Psalm cleanup 2020-10-28 21:10:49 +11:00
Benjamin Beganović
b4b6bd3ae0 ach adding & verify, todo: payment 2020-10-20 17:54:08 +02:00
David Bomba
b12fe64a63 Refactor gateway types 2020-10-12 07:59:25 +11:00
David Bomba
407304d3c6 Console commands for small test data batches 2020-10-10 14:32:10 +11:00
Benjamin Beganović
f34410cdea Remove logging from StripePaymentDriver 2020-09-24 12:20:57 +02:00
Benjamin Beganović
9b4d166e10 Merge remote-tracking branch 'upstream/v2' into v2-1809-remove-omnipay-from-stripe 2020-09-24 11:36:41 +02:00
Benjamin Beganović
94ebf95caa Stripe use SDK to refund 2020-09-18 14:35:53 +02:00
Benjamin Beganović
71ca5d108c Detach payment methods from Stripe 2020-09-18 09:48:53 +02:00
David Bomba
ba75a44eb8
Laravel 7.x Shift (#40)
* Adopt Laravel coding style

The Laravel framework adopts the PSR-2 coding style with some additions.
Laravel apps *should* adopt this coding style as well.

However, Shift allows you to customize the adopted coding style by
adding your own [PHP CS Fixer][1] `.php_cs` config to your project.

You may use [Shift's .php_cs][2] file as a base.

[1]: https://github.com/FriendsOfPHP/PHP-CS-Fixer
[2]: https://gist.github.com/laravel-shift/cab527923ed2a109dda047b97d53c200

* Shift bindings

PHP 5.5.9+ adds the new static `class` property which provides the fully qualified class name. This is preferred over using class name strings as these references are checked by the parser.

* Shift core files

* Shift to Throwable

* Add laravel/ui dependency

* Unindent vendor mail templates

* Shift config files

* Default config files

In an effort to make upgrading the constantly changing config files
easier, Shift defaulted them so you can review the commit diff for
changes. Moving forward, you should use ENV variables or create a
separate config file to allow the core config files to remain
automatically upgradeable.

* Shift Laravel dependencies

* Shift cleanup

* Upgrade to Laravel 7

Co-authored-by: Laravel Shift <shift@laravelshift.com>
2020-09-06 19:38:10 +10:00
David Bomba
5eacb1abf8 Working on token billing with gateway fees 2020-09-04 08:01:17 +10:00
David Bomba
05ce11138e Fixes for payment number creation for online payments 2020-08-19 11:06:19 +10:00
David Bomba
cd4856e8db Helpers for gateway fees 2020-07-15 15:05:02 +10:00
David Bomba
d8a13e6cb2 Auto billing for stripe 2020-07-14 22:50:16 +10:00
David Bomba
4b81e209c4 Working on unattended token billing 2020-07-08 12:20:44 +10:00
Benjamin Beganović
f68465d602 Support Stripe webhook 2020-06-27 17:39:28 +02:00
Benjamin Beganović
525a1d065c Fix ACH payments with tokens 2020-06-26 13:25:58 +02:00
Benjamin Beganović
f6f999b801 Stripe refunds 2020-06-24 16:07:12 +02:00
Benjamin Beganović
f61ecef4f2 Make "setPaymentMethod" available in all drivers 2020-06-23 16:47:29 +02:00
Benjamin Beganović
19f1750f22 Various portal changes:
- Added 'currencies' variable to portal compoer
- Added verification logic to StripePaymentDriver
- Fixed 'CreditCard' data array with failures
- 'verification' translations
- ACH verification views
- Verification routes
2020-06-09 14:42:23 +02:00
Benjamin Beganović
b38ff39771 Refactor createPayment to accept custom status 2020-06-09 13:07:18 +02:00
Benjamin Beganović
06190362ee extract purchase response 2020-06-01 16:19:03 +02:00
Benjamin Beganović
fb793fe2f2 Remove old code from processPaymentView 2020-06-01 14:31:02 +02:00
Benjamin Beganović
b589814d7b Extract paymentView 2020-06-01 14:29:41 +02:00
Benjamin Beganović
cf503b4531 Extract Stripe utilites 2020-06-01 14:17:29 +02:00
Benjamin Beganović
b94ce97bac Extract response from authorization 2020-06-01 14:14:41 +02:00
Benjamin Beganović
0f4d7f6aed Refactor view for authorization 2020-06-01 14:03:18 +02:00
David Bomba
0a4464fc23
Payment Failure Notifications (#3755)
* Type Change for Payment Terms

* Fixes for payment terms casting

* Working on payment failure notifications

* Working on payment failure notifications
2020-05-26 20:22:50 +10:00
David Bomba
d3b29d8ae2
Fixes for Stripe (#3702)
* Fixes for tests

* Fixes for Stripe

* Mail jobs
2020-05-14 21:33:29 +10:00
Benjamin Beganović
a613cfed7c
Payment refunds (#3687)
* Fix whereClientId when starting payment

* Refunding using Paypal

* Refunding engine

* Cleanup and making refund method work

* Remove "refund" method from BasePaymentController

* Add "refund" to PaypalExpressPaymentDriver

* Extract refunding into own classes

* Apply php-cs-fixer to PaypalExpress

* Refunding with stripe
2020-05-14 11:04:23 +10:00
David Bomba
42ccfe0700
Checkout stubs (#3672)
* minor fixes for name spaces, collector facade and composer version bump

* Fixes for invoiceworkflowsettings

* Add more context to support emails

* Working on Firing Subscriptions

* Minor fixes

* Fixes for gateway filtering

* Checkout Driver
2020-05-04 21:13:46 +10:00
Benjamin Beganović
d516b1b097
Workflow settings for quotes & invoices (#3655)
* Fix inputs

* Workflow settings: Auto archive

- New InvoiceWorkflowSettings job
- Updated PaymentCreatedActivity to dispatch the job
- New 'Archivable' trait
- New 'archived_at' field

* Workflow settings: Sending e-mail to client with auto_send

* Workflow settings: Quotes

* Fix HTML markup

* Fix archive & sending

* Remove Archivable trait & migration file

* Change order of sending the events
2020-04-28 09:50:54 +10:00
Benjamin Beganović
e93bdffc0b
Fixes for Stripe payments (#3542)
* Payment fixes:
- Added new "process.js" inside of webpack.mix.js
- BasePaymentDriver now accepts raw array, no explode
- StripePaymentDriver now accepts raw array, no explode
- Removed 'form-control' class from #card-element
- New credit_card for processing payment

* Production build of assets
2020-03-26 00:08:37 +11:00
Benjamin Beganović
ac5525c9ac
[V2] Client portal rework (#3516)
* Client login, reset and update password page

* Client dashboard, sidebar, PortalComposer.php

* wip

* Personal page & update for details

* Invoices, paying & pagination.blade.php

* Invoices, recurring invoice & buttons

* Payments, link component

* Payment methods

* Breadcrums, clean up & wrap up

* Remove format_date() method to formatDate on object

* Payments
- $this->render is now proxy for render()
- Removed logic from Controller.php to ClientPortal.php
- Added MakesDates to ClientGatewayToken.php
- StripePaymentDriver.php now returns correct views
- Refactor of adding new payment method
- Ignoring all local builds for public/js/clients/*

* Signature, wip

* Fix "Pay now" on single invoice

* Payments:
- Added ProcessInvoicesInBulk request class
- Refactor InvoiceController::bulk()
- Displaying terms & payments
- New signature.blade.php
- Removed comment from webpack.mix.js

* Quotes:
- Refactor ProcessInvoicesInBulk.php to ProcessInvoicesInBulkRequest.php
- Add new 'Quotes' field inside of PortalComposer.php
- Added MakesDates to Quote.php
- Added Quote::badgeForStatus()
- Cleanup payment.blade.php
- Quote showing and approving
- New resource 'quotes' in client.php
- New image for quotes, align-left.svg

* Credits:
- New 'credits' resource in client.php
- Fixes for client.php typo

* Breadcrumbs:
- Quotes
- Credits

* Placeholder for translations.

* Restore whereIn & client scope

Co-authored-by: David Bomba <turbo124@gmail.com>
2020-03-24 04:10:42 +11:00
David Bomba
c8e3c7ae68
Fix regression where .env file was being deleted erroneously (#3515)
* Fixes for tests

* Fixes for self updates
2020-03-23 07:45:16 +11:00
David Bomba
c1d3fd12a8
Import (#3360)
* Fixes for test data

* Fixes for tests

* Remove legacy vue components

* Add routing number to client gateway tokens

* working on important documents and company gateways

* Import fixes
2020-02-22 13:25:49 +11:00
David Bomba
4eebaf7eb4
Migrate to services (#3358)
* Working on ledger

* Migrate to services

* Refactor to services

* Migrate to services

* Jobs cleanup
2020-02-21 08:05:01 +11:00
David Bomba
957ac9f5d8
Fix for password protected authorization (#3198)
* Remove unnecessary save() on invoice

* Update copyright

* Working on Credit Repository

* Implement credits as a paymentable entity

* Add credit_id to transformer

* fix rules for update payment

* Fix random deleted_at keys in transformers

* Fix for password_protect check
2020-01-07 11:13:47 +11:00
David Bomba
f712b789ca
Fixes for tests (#3184)
* fix typo

* php-cs traits

* CS fixer pass

* Password protect User routes

* Implement checks to prevent editing a deleted record

* Clean up payment flows

* Fixes for tests
2019-12-31 08:59:12 +11:00
David Bomba
54fc78a88b
Refactor jobs to be MultiDB aware (#3174) 2019-12-27 11:28:36 +11:00
David Bomba
c6e1658ffe
Refactors (#3148)
* Refactor company properties to be presented from settings object instead of company properties

* Working on Email Tests

* Working on emails

* Working on email templats

* Include text version of email

* Refactor Email template builder into trait'

* Fix for custom_value4

* Refactor payment_date -> date && payment_type_id -> type_id

* expose paymentables to API

* expose paymentables to API

* Implement a next_send_date field in invoice/quote tables to allow control over reminder scheduling

* Add custom_values to users,documents and company_gateways tables
2019-12-16 22:34:38 +11:00
David Bomba
4bc92a7aa1
Stub GMail Driver (#3099)
* fix for blank client settings

* Force all custom fields to strings

* Fixes for bulk actions

* Fixes for company POST route..

* Change text from Bitcoin to CRYPTO

* Implement default_gateway_type_id in transformer

* use scopes for company filtering

* Implement validation for portal_domain

* Add Google API client

* Add activities to company transformer
2019-11-27 20:47:59 +11:00
David Bomba
5fafbac36f
Tax Rates (#3026)
* Insert generic for client country if not set

* Invoice fixes

* fixes

* Schema changes

* Refactor Schema and implement fixes for testS

* Use Dispatcher for system logs

* Add TaxRateController

* Update OpenAPI definitions for Tax Rates
2019-10-29 13:55:26 +11:00
David Bomba
87d5e50557 fixes 2019-10-10 22:08:02 +11:00
David Bomba
8d14c6b2bd Switch currency_id back to settings object 2019-10-10 21:43:50 +11:00
David Bomba
a83099dad8 Refactor payment events 2019-10-04 16:22:22 +10:00
David Bomba
5adc88d01e Docs 2019-10-03 22:17:48 +10:00
David Bomba
87d61262ca Move atomic operations to Jobs instead of listeners 2019-10-03 22:02:31 +10:00
David Bomba
833f986b43 Company Ledger updates 2019-10-02 11:16:51 +10:00
David Bomba
a57de08178 Working on partial invoice payments 2019-10-02 08:44:13 +10:00
David Bomba
78ae24df46 Balances with company ledger 2019-10-01 19:59:32 +10:00
David Bomba
2d5d9b816b Payment Events 2019-10-01 11:56:48 +10:00
David Bomba
c4f777b20e Working on paypal response 2019-09-30 15:27:05 +10:00
David Bomba
bbe5049a2d add padding to tables 2019-09-26 15:14:07 +10:00
David Bomba
2df455c21d update invoice status 2019-09-25 16:55:09 +10:00
David Bomba
0687817ae8 Create payment after payment and mark invitations as paid 2019-09-25 16:23:51 +10:00
David Bomba
362f197fbb Store payment after invoice is confirmed paid 2019-09-25 15:55:52 +10:00
David Bomba
5090c963d3 Payment responses and saving card details 2019-09-25 14:03:28 +10:00
David Bomba
46602a21c5 Stripe payments 2019-09-25 12:07:33 +10:00
David Bomba
4fd41dbe1d Client payment flow 2019-09-20 15:13:58 +10:00
David Bomba
bc2feba3fb Clean up 2019-09-19 21:40:05 +10:00
David Bomba
85c645fbeb Set default payment method when inserting first record 2019-09-19 21:31:49 +10:00
David Bomba
a331368383 List view for payment methods 2019-09-18 12:39:53 +10:00
David Bomba
23acdb6394 Add Credit card to client portal 2019-09-17 21:57:59 +10:00
David Bomba
0f9f418e7e Add Credit card to client portal 2019-09-17 21:54:14 +10:00
David Bomba
70d146333b Casts 2019-09-17 20:27:48 +10:00
David Bomba
5211434d49 Working on multiple payment methods per gateway 2019-09-17 15:59:09 +10:00
David Bomba
c79211c4f4 Mitigate nulls in database 2019-09-17 15:42:10 +10:00
David Bomba
3ff6dd4472 Working on credit card auth response 2019-09-16 21:16:20 +10:00
David Bomba
662aa3aed1 Working on credit card auth response 2019-09-16 21:03:25 +10:00
David Bomba
0331575197 Working on card authorisation for Stripe 2019-09-16 14:59:59 +10:00
David Bomba
6b8cbe4e7c Working on preauth credit card stripe 2019-09-16 12:05:30 +10:00
David Bomba
8944727d6b Working on client payment methods 2019-09-15 21:40:46 +10:00
David Bomba
cbb1ca7660 Working on updating credit card 2019-09-14 22:34:05 +10:00
David Bomba
b1836224e2 Working on contact payment page 2019-09-13 08:33:48 +10:00
David Bomba
da0c0080a5 Fixes for login api 2019-09-12 21:46:09 +10:00
David Bomba
0856fc2dfd Working on gateway payment flow 2019-09-08 22:13:55 +10:00
David Bomba
31afd09a0f Working on stripe payments using Omnipay 2019-09-06 15:22:05 +10:00
David Bomba
f8734db1b6 Working on Stripe payment driver 2019-09-05 22:42:26 +10:00
David Bomba
03c3cc8702 Working on Payment Drivers 2019-09-05 17:00:12 +10:00