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

400 Commits

Author SHA1 Message Date
David Bomba
a1abc4f69c
Merge pull request #3851 from beganovich/v2-2606-payment-webhook
Stripe payment webhook
2020-06-28 13:06:43 +10:00
Benjamin Beganović
f68465d602 Support Stripe webhook 2020-06-27 17:39:28 +02:00
David Bomba
e6bc63b2c2 fixes for tests 2020-06-27 12:35:11 +10:00
David Bomba
91e0fba997
Merge branch 'v2' into v2 2020-06-27 12:22:08 +10:00
David Bomba
699678eb83 Fix for adding credit card as payment method with authorize.net 2020-06-27 12:21:16 +10:00
David Bomba
1ce5b7ad8e fixes for refunds 2020-06-27 10:20:27 +10:00
Benjamin Beganović
525a1d065c Fix ACH payments with tokens 2020-06-26 13:25:58 +02:00
Benjamin Beganović
b4d3498ac3 Checkout.com payments & refunds improvements:
- Fix refunding & exception handling
- Fix capturing the payments with Checkout SDK
- Update credit note balance after refunding
2020-06-25 17:08:15 +02:00
Benjamin Beganović
be61945c93 Merge remote-tracking branch 'upstream/v2' into v2-2306-payments 2020-06-24 17:35:13 +02:00
Benjamin Beganović
6e31505ca5 Support Alipay redirect back variable 2020-06-24 17:30:30 +02:00
Benjamin Beganović
4fd2be6adf Refunding using PayPal 2020-06-24 16:58:05 +02:00
Benjamin Beganović
6ffb2d7286 checkout.com wip refunds 2020-06-24 16:29:01 +02:00
Benjamin Beganović
f6f999b801 Stripe refunds 2020-06-24 16:07:12 +02:00
Benjamin Beganović
4d2d41123b Fix Stripe saving card & token store 2020-06-24 14:37:01 +02:00
David Bomba
b3c2d7e11e Authorize .net refund implementation 2020-06-24 15:20:33 +10:00
David Bomba
7e73aa85cb Working on Authorize Refunds 2020-06-24 11:15:51 +10:00
Benjamin Beganović
f61ecef4f2 Make "setPaymentMethod" available in all drivers 2020-06-23 16:47:29 +02:00
David Bomba
f82953b44b Fixes for AUthorize.net 2020-06-17 21:15:24 +10:00
David Bomba
6b9cca14fb remove unneeded index.html 2020-06-17 19:46:12 +10:00
David Bomba
6bf597b4ee Authorize - per invoice credit card paymente 2020-06-17 11:36:29 +10:00
David Bomba
d774ed6526 Authorize.net token payments 2020-06-17 08:48:07 +10:00
David Bomba
15de971e39 Commit for recording transaction -> payment authorize.net 2020-06-17 00:29:39 +10:00
David Bomba
2ffe799c04 Working on token payments with Authorize.net 2020-06-16 23:31:08 +10:00
David Bomba
2d2a5c0812 working on authorize.net token payments 2020-06-16 22:41:56 +10:00
David Bomba
0951526fb3 Charge Payment Profile 2020-06-16 15:36:09 +10:00
David Bomba
9fa069e884
Merge branch 'v2' into v2 2020-06-16 14:01:55 +10:00
David Bomba
48086f1516 Authorize .net 2020-06-16 14:01:10 +10:00
David Bomba
8c260ece95 Get Authorize.net Transactions by refId 2020-06-16 14:00:26 +10:00
David Bomba
b85b0913a6 Authorize.net payment via credit card 2020-06-16 13:49:45 +10:00
David Bomba
2648690b48 authorize.net payment views 2020-06-16 10:31:05 +10:00
David Bomba
7468813cd8 Working on Authorize payment flow 2020-06-16 10:21:40 +10:00
Benjamin Beganović
72cd7ca91a Merge remote-tracking branch 'upstream/v2' into v2-1006-checkout-com 2020-06-15 14:26:59 +02:00
Benjamin Beganović
c03ce4c23a add double check for storing card 2020-06-15 14:23:46 +02:00
Benjamin Beganović
93f86db148 Payments using token 2020-06-15 14:18:44 +02:00
David Bomba
fc40159d36 Fixes for currency precision 2020-06-15 21:42:46 +10:00
Benjamin Beganović
8a3c8ef9fb fix payment status 2020-06-15 13:27:14 +02:00
Benjamin Beganović
9a2286fb7b Update NinjaPaymentModel to Payment 2020-06-15 13:04:05 +02:00
Benjamin Beganović
17831087fe Update secret keys & sandbox 2020-06-15 13:02:44 +02:00
Benjamin Beganović
8d5a843b36 Fix public api key logic 2020-06-15 12:59:02 +02:00
Benjamin Beganović
0186449794 Fix hardcoded currency 2020-06-12 16:32:00 +02:00
Benjamin Beganović
e1b293a68b Storing checkout payment 2020-06-12 16:23:46 +02:00
Benjamin Beganović
cc8056e03b Processing payments with Checkout.com 2020-06-12 14:48:54 +02:00
David Bomba
8e7ae83739 Documentation for base driver 2020-06-12 10:19:26 +10:00
David Bomba
57da585a59 Add charge and refund methods to authorize 2020-06-12 08:32:56 +10:00
Benjamin Beganović
d37064e393 wip 2020-06-11 15:13:35 +02:00
Benjamin Beganović
049f30104e checkout 2020-06-10 17:38:10 +02:00
David Bomba
def550ec90
Merge branch 'v2' into v2 2020-06-10 22:51:25 +10:00
David Bomba
91f4c0ecd8 Fix composer.lock file 2020-06-10 22:45:50 +10:00
David Bomba
a9637b3cb5 Authorize a credit card 2020-06-10 22:42:10 +10:00
David Bomba
78f99140d8 Working on Authorize.net 2020-06-10 18:11:53 +10:00
David Bomba
15081c2875 Working on Authorize.net 2020-06-10 18:05:30 +10:00
David Bomba
ef209741d6 Authorize.net 2020-06-10 15:28:41 +10:00
David Bomba
d6a8ef8de4 Working on Authorize.net 2020-06-10 15:21:11 +10:00
David Bomba
17d10f5f66 Working on Authorize.net 2020-06-10 11:06:37 +10:00
Benjamin Beganović
b6ad39b8e2 Stripe: Alipay implementation 2020-06-09 16:56:08 +02:00
David Bomba
c558e0df45 authorize.net 2020-06-09 22:54:22 +10: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ć
e78ae5d9c4 Stripe: ACH implementation 2020-06-09 14:40:55 +02:00
David Bomba
6c7ca0d8c9 Working on authorize 2020-06-09 21:53:23 +10:00
Benjamin Beganović
49c7420ce1 Stripe, SOFORT: Fix country variable 2020-06-09 13:24:37 +02:00
David Bomba
d58c2f05ff Refactoring Payment Drivers 2020-06-09 21:17:26 +10:00
Benjamin Beganović
1965dbf041 Stripe: SOFORT implementation 2020-06-09 13:17:05 +02:00
Benjamin Beganović
b38ff39771 Refactor createPayment to accept custom status 2020-06-09 13:07:18 +02:00
David Bomba
d35b5be0dd Working on Authorize.net 2020-06-09 15:34:37 +10:00
David Bomba
4985f94ce1 Working on Authorize.net 2020-06-09 13:54:09 +10: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
c339c25d9c
Bulk actions for Payment Terms (#3752)
* Fixes for tests

* payment terms policies and repo

* Bulk actions for payment terms

* Fixes for documentation

* working on payment failure mailer
2020-05-26 18:20: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
d9d2e21f93
Subscriptions (#3682)
* Working on subscriptions

* Implement return type in models

* Subscription implementation

* Improvements to handling importation of large accountS

* Loggin imports

* Activate collector

* Improve memory usage of import script

* Quote actions

* Send Quotes

* Fixes for seg faults!

* Minor fixes

* Fixes for client contact scopes
2020-05-09 08:35:49 +10:00
Benjamin Beganović
2704bf2f82
Client portal improvements & bug fixes (#3678)
* fix turbolink 404

* fix checkbox when adding card using stripe

* Fix hashed_ids problem when using PayPal

* php-cs-fixer

* Bump tailwind & purgecss

* fix auth scope

* scope to auth contact company
2020-05-09 08:20:37 +10:00
Benjamin Beganović
e3e52987c3
Reset v2 into working stage (#3673)
* fix withsorting

* fix recurring invoices table

* Reset BasePaymentDriver
2020-05-05 07:22:31 +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
43e57d0117
Fixes for self-update (#3514)
* minor fix for payment notifications

* styleci

* Limit Self updating to self hosters only
:

* Fixes for designs

* Minor fixes for self-update
2020-03-21 16:37:30 +11:00
David Bomba
37f295d49e
Improve notification performance (#3452)
* Improve notification performance

* Cascade deletes

* Fixes for company deletes

* Fixes for formatting

* todos for company

* Set currency id on payment

* Minor fixes for payment controller
2020-03-08 16:59:06 +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
9e9cd37b87
Modifications to Designs (#3353)
* Working on Quotes

* Naming refactor for Quotes

* Quote Actions

* Quote Pdfs

* Quote PDFs

* Refunds in Stripe

* Fixes tests

* Company Ledger work
2020-02-20 07:44:12 +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
Benjamin Beganović
1f7c661929 Fix PaymentWasCreated event second parameter (#3175) 2019-12-28 17:25:18 +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
9d8e4fdb06
Change companies table property domain to subdomain (#3141) 2019-12-11 07:53:41 +11:00
David Bomba
9702dc741c
Refactor for invoices/quotes/credit transformers (#3100)
* Refactor Invoices / Quotes / Credits to use the same transformer

* Add contact_key to factories
2019-11-27 21:27:24 +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
06a120e128
Resolve conflicts (#3043)
* Request Cancellation

* Add fields to settings

* Recurring invoice cancellation request

* Stub Template controller

* Template Controller

* Fixes for git commit
2019-11-05 10:26:15 +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
ae02953a8f Client portal client screen 2019-10-04 07:51:54 +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
724cccacfc Fixes for tests 2019-10-03 21:50:50 +10:00
David Bomba
b243ce4643 Log system events 2019-10-02 13:00:51 +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
f2a8e5f4df fixes for tests 2019-10-01 15:54:21 +10:00
David Bomba
4bccdae01e using events to fire updates for invoices and company ledger 2019-10-01 14:27:04 +10:00
David Bomba
2d5d9b816b Payment Events 2019-10-01 11:56:48 +10:00
David Bomba
3721e2b7f1 paypal 2019-10-01 07:16:46 +10:00
David Bomba
62949b2fad Paypal response 2019-09-30 16:54:24 +10:00
David Bomba
c4f777b20e Working on paypal response 2019-09-30 15:27:05 +10:00
David Bomba
0b7054b315 Complete paypal response 2019-09-30 11:15:57 +10:00
David Bomba
e89d7cebaa Working on Paypal Driver 2019-09-30 09:26:37 +10:00
David Bomba
b8aaa8c082 Payment hooks 2019-09-30 07:49:43 +10:00
David Bomba
58a01b7296 remove defaults from DB 2019-09-27 07:54:03 +10:00
David Bomba
49b97038f7 Working on Paypal 2019-09-26 15:47:37 +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
7cfe0c22fb Add Payment Method - client side 2019-09-13 15:52:01 +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
a74d60a5ee fixes for tests 2019-09-10 20:30:55 +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
f72bd34483 Fleshing out payment drivers 2019-09-06 09:00:23 +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