New features: - Credit note handling: Exclude negative invoices from GC reconciliation - Retry detection: Flag invoices with multiple GC payment attempts - Partial payment detection: Track invoices where remain_to_pay > 0 - Payout fee CSV: Export detailed fee breakdown per payout - Configurable tolerances: RECONCILIATION_DATE_TOLERANCE, RECONCILIATION_PAYOUT_TOLERANCE Files: - lib/reconciliation/gocardless_payouts_parser.rb (new) - Parse GC payouts CSV - lib/reconciliation/engine.rb - Add retry_group, partial fields to Match struct - lib/reconciliation/reporter.rb - Show partial/retry in report, write payouts CSV - lib/reconciliation/dolibarr_fetcher.rb - Add is_credit_note field, filter negatives - bin/reconcile - Wire up --gc-payouts argument - README.md - Document new features and --gc-payouts usage - .env.example - Add optional tolerance settings Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
14 lines
460 B
Ruby
14 lines
460 B
Ruby
# frozen_string_literal: true
|
|
|
|
require "bundler/setup"
|
|
require "dotenv/load"
|
|
|
|
require_relative "dolibarr/client"
|
|
require_relative "reconciliation/dolibarr_fetcher"
|
|
require_relative "reconciliation/gocardless_parser"
|
|
require_relative "reconciliation/gocardless_payouts_parser"
|
|
require_relative "reconciliation/shine_parser"
|
|
require_relative "reconciliation/engine"
|
|
require_relative "reconciliation/reporter"
|
|
require_relative "reconciliation/fixer"
|