Skip to content

Payment mandates

SEPA, GoCardless and Pennylane Pro Account direct-debit mandates.

Bases: SyncAPIResource

Manage SEPA direct debit mandates.

list

list(
    *,
    cursor: str | None = None,
    limit: int | None = None,
    filter: FiltersInput | None = None,
    sort: str | None = None,
) -> SyncCursorPage[SepaMandate]

List SEPA mandates.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getsepamandates

Parameters:

Name Type Description Default
cursor str | None

Pagination cursor from a previous page.

None
limit int | None

Results per page (1-100, API default 20).

None
filter FiltersInput | None

Conditions built with :mod:pennylane_sdk.filters.

None
sort str | None

Sort field, prefixed with - for descending (default -id).

None

get

get(sepa_mandate_id: int) -> SepaMandate

Retrieve a SEPA mandate by its Pennylane identifier.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getsepamandate

create

create(
    *,
    bic: str,
    iban: str,
    signed_at: str,
    identifier: str,
    customer_id: int,
    bank: str | None = None,
    sequence_type: str | None = None,
) -> SepaMandate

Create a SEPA mandate.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postsepamandates

Parameters:

Name Type Description Default
bic str

Bank Identifier Code (BIC) of the customer's bank.

required
iban str

International Bank Account Number (IBAN) of the customer.

required
signed_at str

Date when the mandate was signed (ISO 8601 date).

required
identifier str

Unique identifier for the mandate.

required
customer_id int

ID of the customer for which the mandate is created.

required
bank str | None

Name of the customer's bank.

None
sequence_type str | None

SEPA mandate sequence type (FRST, OOFF, RCUR, FNAL; default RCUR).

None

update

update(
    sepa_mandate_id: int,
    *,
    bic: str | None = None,
    iban: str | None = None,
    signed_at: str | None = None,
    identifier: str | None = None,
    customer_id: int | None = None,
    bank: str | None = None,
    sequence_type: str | None = None,
) -> SepaMandate

Update a SEPA mandate. Only the provided fields are modified.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/putsepamandate

delete

delete(sepa_mandate_id: int) -> None

Delete a SEPA mandate.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/deletesepamandate

Bases: SyncAPIResource

Manage GoCardless direct debit mandates.

list

list(
    *,
    cursor: str | None = None,
    limit: int | None = None,
    filter: FiltersInput | None = None,
    sort: str | None = None,
) -> SyncCursorPage[GocardlessMandate]

List GoCardless mandates.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getgocardlessmandates

Parameters:

Name Type Description Default
cursor str | None

Pagination cursor from a previous page.

None
limit int | None

Results per page (1-100, API default 20).

None
filter FiltersInput | None

Conditions built with :mod:pennylane_sdk.filters.

None
sort str | None

Sort field, prefixed with - for descending (default -id).

None

get

get(gocardless_mandate_id: int) -> GocardlessMandate

Retrieve a GoCardless mandate by its Pennylane identifier.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getgocardlessmandate

send_mail_request

send_mail_request(
    *,
    customer_id: int,
    recipients: Sequence[str],
    subject: str | None = None,
    body: str | None = None,
) -> None

Send a GoCardless mandate email request to a customer.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postgocardlessmandatemailrequests

Parameters:

Name Type Description Default
customer_id int

Customer identifier.

required
recipients Sequence[str]

Email recipient addresses.

required
subject str | None

Email subject line.

None
body str | None

Email body content.

None

cancel

cancel(gocardless_mandate_id: int) -> None

Cancel a GoCardless mandate.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postgocardlessmandatecancellations

associate

associate(
    gocardless_mandate_id: int, *, customer_id: int
) -> None

Associate a GoCardless mandate to a customer.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postgocardlessmandateassociations

Parameters:

Name Type Description Default
customer_id int

Customer identifier.

required

Bases: SyncAPIResource

Manage Pennylane Pro Account mandates and migrations.

request_mandate

request_mandate(*, customer_id: int) -> None

Send a Pro Account SEPA mandate request to a customer.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postproaccountmandatemailrequests

Parameters:

Name Type Description Default
customer_id int

Customer identifier.

required

list_mandate_migrations

list_mandate_migrations(
    *,
    cursor: str | None = None,
    limit: int | None = None,
    filter: FiltersInput | None = None,
    sort: str | None = None,
) -> SyncCursorPage[MandateMigrationCandidate]

List mandate migration candidates for the Pro Account.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getproaccountmandatemigrations

Parameters:

Name Type Description Default
cursor str | None

Pagination cursor from a previous page.

None
limit int | None

Results per page (1-100, API default 20).

None
filter FiltersInput | None

Conditions built with :mod:pennylane_sdk.filters.

None
sort str | None

Sort field, prefixed with - for descending (default -id).

None

migrate_mandate

migrate_mandate(
    *,
    mandate_type: str,
    mandate_id: int,
    early_execution_date_permitted: bool | None = None,
) -> MandateMigration

Migrate a mandate to Pro Account.

Scope: customer_mandates:all. Reference: https://pennylane.readme.io/reference/postproaccountmandatemigrations

Parameters:

Name Type Description Default
mandate_type str

Type of the mandate to migrate (SepaMandate or Mandate for GoCardless mandates).

required
mandate_id int

ID of the mandate to migrate.

required
early_execution_date_permitted bool | None

Whether to permit early execution date for the migration (defaults to False).

None

list_mandates

list_mandates(
    *,
    cursor: str | None = None,
    limit: int | None = None,
    filter: FiltersInput | None = None,
    sort: str | None = None,
) -> SyncCursorPage[ProAccountMandate]

List Pro Account payment mandates.

Scope: customer_mandates:readonly. Reference: https://pennylane.readme.io/reference/getproaccountmandates

Parameters:

Name Type Description Default
cursor str | None

Pagination cursor from a previous page.

None
limit int | None

Results per page (1-100, API default 20).

None
filter FiltersInput | None

Conditions built with :mod:pennylane_sdk.filters.

None
sort str | None

Sort field, prefixed with - for descending (default -id).

None