Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.younegotiate.com/llms.txt

Use this file to discover all available pages before exploring further.

Real-World Example

Jane’s installment fails because the card is declined. The portal records the failure, schedules follow-up where appropriate, retries after the configured wait, and may auto-skip the failed installment when the next due date is too close.

Visual Flow

How It Should Work

  • It should record failed payment attempts and communicate next steps to the consumer.
  • It should retry eligible failed payments after the configured wait period.
  • It should skip failed installments safely when the next due date is too close.
  • It should track consecutive skips and send the correct communication when needed.

How It Should Not Work

  • It should not retry failed payments immediately without respecting retry rules.
  • It should not charge a skipped or held schedule transaction as if it were still due today.
  • It should not leave consumers without communication after important payment failures.

Developer Notes

  • ReprocessConsumerFailedPaymentsCommand is scheduled daily at 21:00.
  • NextPaymentDueSoonSkipFailedScheduledCommand is scheduled daily at 2:30.
  • RestartPaymentPlanCommand is scheduled daily at 4:00 for held plans with restart dates.
  • app/Console/Commands/ReprocessConsumerFailedPaymentsCommand.php
  • app/Console/Commands/NextPaymentDueSoonSkipFailedScheduledCommand.php
  • app/Console/Commands/RestartPaymentPlanCommand.php
  • app/Jobs/SkipScheduleTransactionJob.php
  • app/Services/ScheduledCommunicationService.php
Last modified on May 25, 2026