diff --git a/CHANGELOG.md b/CHANGELOG.md index eba42ea0..1af1596d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,8 @@ Given a version number MAJOR.MINOR.PATCH, increment: ## [Unreleased] +### Added +- display_description attribute to Transfer resource ## [2.34.0] - 2026-05-07 ### Changed diff --git a/README.md b/README.md index ee8ee0c7..329ee026 100644 --- a/README.md +++ b/README.md @@ -419,6 +419,7 @@ transfers = starkbank.transfer.create([ tax_id="012.345.678-90", name="Jon Snow", scheduled=datetime.utcnow() + timedelta(days=3), + display_description="Payment for service #1234", rules=[ starkbank.transfer.Rule( key="resendingLimit", # Set maximum number of retries if Transfer fails due to systemic issues at the receiver bank diff --git a/starkbank/transfer/__transfer.py b/starkbank/transfer/__transfer.py index b54fa044..109340a8 100644 --- a/starkbank/transfer/__transfer.py +++ b/starkbank/transfer/__transfer.py @@ -23,6 +23,7 @@ class Transfer(Resource): - external_id [string, default None]: url safe string that must be unique among all your transfers. Duplicated external_ids will cause failures. By default, this parameter will block any transfer that repeats amount and receiver information on the same date. ex: "my-internal-id-123456" - scheduled [datetime.date, datetime.datetime or string, default now]: date or datetime when the transfer will be processed. May be pushed to next business day if necessary. ex: datetime.datetime(2020, 3, 10, 10, 30, 0, 0) - description [string, default None]: optional description to override default description to be shown in the bank statement. ex: "Payment for service #1234" + - display_description [string, default None]: optional description to be shown in the receiver bank interface. ex: 'Payment for service #1234' - tags [list of strings, default []]: list of strings for reference when searching for transfers. ex: ["employees", "monthly"] - rules [list of Transfer.Rules, default []]: list of Transfer.Rule objects for modifying transfer behavior. ex: [Transfer.Rule(key="resendingLimit", value=5)] ## Attributes (return-only): @@ -36,7 +37,7 @@ class Transfer(Resource): """ def __init__(self, amount, name, tax_id, bank_code, branch_code, account_number, account_type, - external_id=None, scheduled=None, description=None, transaction_ids=None, metadata=None, + external_id=None, scheduled=None, description=None, display_description=None, transaction_ids=None, metadata=None, fee=None, tags=None, rules=None, status=None, id=None, created=None, updated=None ): Resource.__init__(self, id=id) @@ -51,6 +52,7 @@ def __init__(self, amount, name, tax_id, bank_code, branch_code, account_number, self.external_id = external_id self.scheduled = check_datetime_or_date(scheduled) self.description = description + self.display_description = display_description self.tags = tags self.rules = _parse_rules(rules) self.fee = fee diff --git a/tests/utils/transfer.py b/tests/utils/transfer.py index 118dbc2e..c3a92013 100644 --- a/tests/utils/transfer.py +++ b/tests/utils/transfer.py @@ -39,6 +39,7 @@ def generateExampleTransfersJson(n=1, randomSchedule=False): ) ] transfer.description = choice([None, "Test description"]) + transfer.display_description = choice([None, "Test display description"]) if randomSchedule: transfer.scheduled = choice([date.today(), datetime.utcnow()]) + timedelta(days=randint(0, 10)) transfers.append(transfer)