Skip to content

Releases: stellar/stellar-disbursement-platform-backend

2.0.0

06 Jun 23:25
5037aff
Compare
Choose a tag to compare

2.0.0

Release of the Stellar Disbursement Platform v2.0.0. This release introduces multi-tenancy support, allowing multiple tenants
(organizations) to use the platform simultaneously.

Each organization has its own set of users, receivers, disbursements, etc.

This version is only compatible with the [stellar/stellar-disbursement-platform-frontend] version 2.x.x.

Changed

  • Support multi-tenant CLI
    • Make add-user CLI support multi-tenancy #228
    • Change migrations CLI to run for all tenants #89
  • Use DB connection pool as dependency injection #207
  • Make receiver registration handler tenant-aware #117
  • Tag log entries with tenant metadata #192
  • Use DistributionAccountResolver instead of passing around distribution public key #212
  • Make provision new tenant an atomic operation #233
  • Make ready_payments_cancellation job multi-tenant [#223] (#223)

Added

  • Tenant Provisioning & Onboarding #84
  • Tenant Authentication Middleware #92
  • Multi-tenancy connection pool & data source manager #86
  • Generate multitenant SEP-1 TOML file #111
  • Prepare Signature Service & TSS to support Multi-tenancy
    • Add signature service with configurable distribution accounts #174
    • Aggregate all tx submission dependencies under SubmitterEngine #165
    • Add configurable signature service type #160
    • Allow signature service to be dependency-injected #158
    • Use dependency-injected signature service in channel-account CLI commands #156
  • '/tenant' endpoint
    • Setup tenant server #90
    • POST Provision tenant endpoint #97
    • GET Tenant(s) API #93
    • PATCH Tenant API #100
    • DELETE Tenant API #272
  • Patch incoming TSS events to Anchor platform #134
  • Update DB structure so that TSS resources can be shared by multiple SDP tenants
  • Add host distribution account awareness #172
  • Wire distribution account to tenant admin table during user provisioning #198
  • Prepare transaction submission table to reference tenant #142
  • Kafka message broker support
    • Migrate SMS invitation to use message broker from scheduled jobs #133
    • Publish receiver wallet invitation events at disbursement start #182
    • Produce payment events to sync back to SDP [#149] (#149)
    • Produce payment events from SDP to TSS #159
  • Implement DistributionAccountDBSignatureClient #197
  • Create tenant distribution account during provisioning #224
  • Enable payments scheduler job as an alternative to using Kafka #230
  • Add default tenant capability to start the SDP in a single tenant mode #249
  • Add script to migrate SDP v1.1.6 to V2.x.x #267

Security

  • Admin API authentication/authorization #201
  • Enable security protocols for Kafka

1.1.7

25 Apr 22:26
b33f35d
Compare
Choose a tag to compare

1.1.7

Security

  • Bump google.golang.org/protobuf from 1.31.0 to 1.33.0. #270
  • Bump golang.org/x/crypto from v0.17.0 to v0.21.0. #269

1.1.6

15 Apr 20:16
9ddf61a
Compare
Choose a tag to compare

1.1.6

Attention, this version is compatible with the frontend version 1.1.2.

Changed

  • Update the PATCH /receivers/{id} request, so a receiver's verification info is not just inserted but upserted. The update part of the upsert only takes place if the verification info has not been confirmed yet. #205
  • Update the order of the verification field that is shown to the receiver during the [SEP-24] flow. The order was (updated_at DESC) and was updated to the composed sorting (updated_at DESC, rv.verification_field ASC) to ensure consistency when multiple verification fields share the same updated_at value.
  • Improve information in the error message returned when the disbursement instruction contains a verification info that is different from an already existing verification info that was already confirmed by the receiver. #178
  • When adding an asset, make sure to trim the spaces fom the issuer field. #185

Security

  • Bump Go version from 1.19 to 1.22, and upgraded the version of some CI tools. #196
  • Add rate-limiter in both in the application and the kubernetes deployment. #195

2.0.0-rc1

29 Mar 22:13
Compare
Choose a tag to compare
2.0.0-rc1 Pre-release
Pre-release

2.0.0.rc1

First Release Candidate of the Stellar Disbursement Platform v2.0.0. This
release introduces multi-tenancy support, allowing multiple tenants
(organizations) to use the platform simultaneously.

Each organization has its own set of users, receivers, disbursements, etc.

This version is only compatible with the [stellar/stellar-disbursement-platform-frontend] version 2.x.x.

Changed

  • Support multi-tenant CLI
    • Make add-user CLI support multi-tenancy #228
    • Change migrations CLI to run for all tenants #89
  • Use DB connection pool as dependency injection #207
  • Make receiver registration handler tenant-aware #117
  • Tag log entries with tenant metadata #192
  • Use DistributionAccountResolver instead of passing around distribution public key #212
  • Make provision new tenant an atomic operation #233
  • Make ready_payments_cancellation job multi-tenant [#223] (#223)

Added

  • Tenant Provisioning & Onboarding #84
  • Tenant Authentication Middleware #92
  • Multi-tenancy connection pool & data source manager #86
  • Generate multitenant SEP-1 TOML file #111
  • Prepare Signature Service & TSS to support Multi-tenancy
    • Add signature service with configurable distribution accounts #174
    • Aggregate all tx submission dependencies under SubmitterEngine #165
    • Add configurable signature service type #160
    • Allow signature service to be dependency-injected #158
    • Use dependency-injected signature service in channel-account CLI commands #156
  • '/tenant' endpoint
    • Setup tenant server #90
    • POST Provision tenant endpoint #97
    • GET Tenant(s) API #93
    • PATCH Tenant API #100
  • add-tenant CLI #76
  • Patch incoming TSS events to Anchor platform #134
  • Update DB structure so that TSS resources can be shared by multiple SDP tenants
  • Add host distribution account awareness #172
  • Wire distribution account to tenant admin table during user provisioning #198
  • Prepare transaction submission table to reference tenant #142
  • Kafka message broker support
    • Migrate SMS invitation to use message broker from scheduled jobs #133
    • Publish receiver wallet invitation events at disbursement start #182
    • Produce payment events to sync back to SDP [#149] (#149)
    • Produce payment events from SDP to TSS #159
  • Implement DistributionAccountDBSignatureClient #197
  • Create tenant distribution account during provisioning #224
  • Enable payments scheduler job as an alternative to using Kafka #230

Security

  • Admin API authentication/authorization #201
  • Enable security protocols for Kafka

1.1.5

06 Mar 21:43
cb86e4a
Compare
Choose a tag to compare

1.1.5

Fixed

  • Trim whitespaces for all disbursement instruction fields during CSV upload to avoid duplication of data #211

Security

  • Upgrade golang version to 1.22.1 for security reasons #216

1.1.4

22 Feb 22:27
63a9f94
Compare
Choose a tag to compare

1.1.4

Fixed

  • Fix the insufficient balance validation by only considering payments with same asset of the disbursement being started #202

Security

  • Update golang.org/x/crypto version to v0.17.0 for security reasons #202

1.1.3

09 Feb 21:07
d031315
Compare
Choose a tag to compare

1.1.3

Fixed

  • SEP24 registration flow not working properly when the phone number was not found in the DB #187
  • Fix distribution account balance validation that fails when the intended asset is XLM #186

1.1.2

06 Feb 06:15
aea8191
Compare
Choose a tag to compare

1.1.2

Fixed

  • Re-add missing recaptcha script #179

1.1.1

06 Feb 01:16
b2b7a88
Compare
Choose a tag to compare

1.1.1

Fixed

  • TSS amount precision #176

1.1.0

01 Feb 22:23
43644d6
Compare
Choose a tag to compare

1.1.0

Changed

  • Change POST /disbursements to accept different verification types #103
  • Change SEP-24 Flow to display different verifications based on disbursement verification type #116
  • Add sorting to GET /users endpoint #104
  • Change read permission for receiver details to include business roles #144
  • Add support for unique payment ID to disbursement instructions file as an optional field in GET /payments/{id} #131
  • Add support for SMS preview & editing before sending a new disbursement #146
  • Add metadata for users that created and started a disbursement in disbursement details GET /disbursements, GET /disbursements/{id} #151
  • Update CI check to run the exhaustive validator #163
  • Preload reCAPTCHA script in attempt to mitigate component loading issues upon login #152
  • Validate distribution account balance before starting disbursement #161

Added

  • Support automatic cancellation of payments in READY status after a certain time period #121
  • API endpoint for cancelling payments in READY status: PATCH /payments/{id}/status #130
  • Use CI to make sure the helm README is up to date #164

Fixed

  • Verification DOB validation missing when date is in the future #101
  • Support disbursements from two or more wallet providers to the same address #87
  • [TSS] Stale channel account not cleared after switching distribution keys #91
  • Make setup-wallets-for-network tests more flexible #95
  • Make POST /assets idempotent #122
  • Add missing space when building query #121

Security

  • Stellar Protocol 20 Horizon SDK upgrade #107
  • Coinspect Issues:
    • Add "Secure Operation Manual" section and updated the code to enforce MFA and reCAPTCHA #150
    • Coinspect SDP-006 Weak password policy #143
    • Coinspect SDP-007: Log user activity when updating user info #139
    • Coinspect SDP-012 Enhance User Awareness for SMS One-Time Password (OTP) Usage #138