Business-GoCardless
view release on metacpan or search on metacpan
Revision history for Business-GoCardless
0.45 2026-06-15
- Add mandate_type to Business::GoCardless::Mandate, with
is_bank_debit, is_instant, is_recurring, is_vrp_commercial,
and is_vrp_sweeping helper methods
- Add authorisation_source and next_possible_standard_ach_charge_date
attributes to Business::GoCardless::Mandate
- Add consumed, blocked, and suspended_by_payer status check methods
to Business::GoCardless::Mandate
0.44 2024-08-26
- Add consent_type to Business::GoCardless::Mandate
0.43 2024-02-01
- Make payout/payouts methods compatible with Pro API
0.42 2024-02-01
- Bump minimum Perl version to 5.20.0
lib/Business/GoCardless/Mandate.pm view on Meta::CPAN
=head1 Status checks on a mandate
pending_customer_approval
pending_submission
submitted
active
failed
cancelled
expired
consumed
blocked
suspended_by_payer
if ( $Mandate->failed ) {
...
}
=cut
sub pending_customer_approval { return shift->status eq 'pending_customer_approval' }
sub pending_submission { return shift->status eq 'pending_submission' }
sub submitted { return shift->status eq 'submitted' }
sub active { return shift->status eq 'active' }
sub failed { return shift->status eq 'failed' }
sub cancelled { return shift->status eq 'cancelled' }
sub expired { return shift->status eq 'expired' }
sub consumed { return shift->status eq 'consumed' }
sub blocked { return shift->status eq 'blocked' }
sub suspended_by_payer { return shift->status eq 'suspended_by_payer' }
=head1 Funds settlement checks on a mandate
is_managed
is_direct
=cut
sub is_managed { return shift->funds_settlement eq 'managed' }
t/business/gocardless/mandate.t view on Meta::CPAN
$Mandate->status( 'active' );
ok( ! $Mandate->pending_customer_approval,'pending_customer_approval' );
ok( ! $Mandate->pending_submission,'pending_submission' );
ok( ! $Mandate->submitted,'submitted' );
ok( $Mandate->active,'active' );
ok( ! $Mandate->failed,'failed' );
ok( ! $Mandate->cancelled,'cancelled' );
ok( ! $Mandate->expired,'expired' );
ok( ! $Mandate->consumed,'consumed' );
ok( ! $Mandate->blocked,'blocked' );
ok( ! $Mandate->suspended_by_payer,'suspended_by_payer' );
ok( ! $Mandate->consent_parameters,'consent_parameters' );
ok( ! $Mandate->consent_type,'consent_type' );
ok( ! $Mandate->verified_at,'verified_at' );
ok( ! $Mandate->authorisation_source,'authorisation_source' );
ok( ! $Mandate->next_possible_standard_ach_charge_date,'next_possible_standard_ach_charge_date' );
is( $Mandate->funds_settlement,'managed','funds_settlement' );
ok( $Mandate->is_managed,'->is_managed' );
ok( ! $Mandate->is_direct,'! ->is_direct' );
( run in 1.499 second using v1.01-cache-2.11-cpan-c966e8aa7e8 )