v1.111.0

juspay/hyperswitchv1.111.0Aug 22, 2024by ShankarSinghC

AI Summary

Focuses on architectural improvements including the introduction of business profile domain models for v1 and v2 APIs, and consolidating connector codebases into the `hyperswitch_connectors` crate. It also adds support for partial-auth and secured payment links.

Key Highlights

  • Business profile domain models for v1 and v2 APIs
  • Connector consolidation (BRAINTREE, FISERV, BAMBORA, BITPAY, STAX)
  • Support for partial-auth
  • Provision for secured payment links

New Features

  • Partial-auth support with header injection
  • Business profile domain models
  • Secure payment links
  • Connector consolidation into hyperswitch_connectors
  • Organization ID rename for v2
  • Payment link secure link endpoint

Full Release Notes

## 1.111.0 (2024-08-22)

### Docker Release
[v1.111.0](https://hub.docker.com/layers/juspaydotin/hyperswitch-router/v1.111.0/images/sha256-b43aa78a07a5bf17c47c9d66554cf64ef574196018cf9c5dfa6041a14ec38d07) (with AWS SES support)

[v1.111.0-standalone](https://hub.docker.com/layers/juspaydotin/hyperswitch-router/v1.111.0-standalone/images/sha256-a5128751437550b15f2bfa3d83aead469839b07d62cb4cad8279f35f232d5242) (without AWS SES support)

#### Features

- **auth:**
  - Add support for partial-auth, by facilitating injection of authentication parameters in headers ([#4802](https://github.com/juspay/hyperswitch/pull/4802))
  - Add `profile_id` in `AuthenticationData` ([#5492](https://github.com/juspay/hyperswitch/pull/5492))
- **business_profile:** Introduce domain models for business profile v1 and v2 APIs ([#5497](https://github.com/juspay/hyperswitch/pull/5497))
- **connector:**
  - [FISERV] Move connector to hyperswitch_connectors ([#5441](https://github.com/juspay/hyperswitch/pull/5441))
  - [Bambora APAC] add mandate flow ([#5376](https://github.com/juspay/hyperswitch/pull/5376))
  - [BAMBORA, BITPAY, STAX] Move connector to hyperswitch_connectors ([#5450](https://github.com/juspay/hyperswitch/pull/5450))
  - [Paybox] add connector template code ([#5485](https://github.com/juspay/hyperswitch/pull/5485))
- **core:** Accept business profile in core functions for payments, refund, payout and disputes ([#5498](https://github.com/juspay/hyperswitch/pull/5498))
- **opensearch:** Updated status filter field name to match index and added time-range based search ([#5468](https://github.com/juspay/hyperswitch/pull/5468))
- **payment_link:** Add provision for secured payment links ([#5357](https://github.com/juspay/hyperswitch/pull/5357))
- **payments:** Support sort criteria in payments list ([#5389](https://github.com/juspay/hyperswitch/pull/5389))
- Add env variable for enable key manager service ([#5442](https://github.com/juspay/hyperswitch/pull/5442))
- Rename columns in organization for v2 ([#5424](https://github.com/juspay/hyperswitch/pull/5424))

#### Bug Fixes

- **connector:** [Pix] convert data type of pix fields ([#5476](https://github.com/juspay/hyperswitch/pull/5476))
- **core:** Update pm_status accordingly for the respective attempt status ([#5560](https://github.com/juspay/hyperswitch/pull/5560))
- **open_payment_links:** Send displaySavedPaymentMethods as false explicitly for open payment links ([#5501](https://github.com/juspay/hyperswitch/pull/5501))
- **payment_link:** Move redirection fn to global scope for open links ([#5494](https://github.com/juspay/hyperswitch/pull/5494))
- Added created at and modified at keys in PaymentAttemptResponse ([#5412](https://github.com/juspay/hyperswitch/pull/5412))
- [CYBERSOURCE] Update status handling for AuthorizedPendingReview ([#5542](https://github.com/juspay/hyperswitch/pull/5542))

#### Refactors

- **configs:** Include env for cybersource in integration_test ([#5474](https://github.com/juspay/hyperswitch/pull/5474))
- **connector:** Add amount conversion framework to placetopay ([#4988](https://github.com/juspay/hyperswitch/pull/4988))
- **id_type:** Use macros for defining ID types and implementing common traits ([#5471](https://github.com/juspay/hyperswitch/pull/5471))
- **merchant_account_v2:** Recreate id for `merchant_account` v2 ([#5439](https://github.com/juspay/hyperswitch/pull/5439))
- **opensearch:** Add Error Handling for Empty Query and Filters in Request ([#5432](https://github.com/juspay/hyperswitch/pull/5432))
- **role:** Determine level of role entity ([#5488](https://github.com/juspay/hyperswitch/pull/5488))
- **router:**
  - Remove `connector_account_details` and `connector_webhook_details` in merchant_connector_account list response ([#5457](https://github.com/juspay/hyperswitch/pull/5457))
  - Domain and diesel model changes for merchant_connector_account create v2 flow ([#5462](https://github.com/juspay/hyperswitch/pull/5462))
- **routing:** Api v2 for routing create and activate endpoints ([#5423](https://github.com/juspay/hyperswitch/pull/5423))

### Compatibility
This version of the Hyperswitch App server is compatible with the following versions of other components:

- Control Center Version: [v1.33.0](https://github.com/juspay/hyperswitch-control-center/releases/tag/v1.33.0)
- Web Client Version: [v0.80.0](https://github.com/juspay/hyperswitch-web/releases/tag/v0.80.0)
- WooCommerce Plugin Version: [v1.6.1](https://github.com/juspay/hyperswitch-woocommerce-plugin/releases/tag/v1.6.1)
- Card Vault Version: [v0.4.0](https://github.com/juspay/hyperswitch-card-vault/releases/tag/v0.4.0)
- Key Manager: [V0.1.3](https://github.com/juspay/hyperswitch-encryption-service/releases/tag/v0.1.3)

### Database Migrations

```sql
-- DB Difference between v1.110.0 and v1.111.0
-- Add a new column for allowed domains and secure link endpoint
ALTER table payment_link ADD COLUMN IF NOT EXISTS secure_link VARCHAR(255);
-- Your SQL goes here
ALTER TABLE organization
ADD COLUMN id VARCHAR(32);
ALTER TABLE organization
ADD COLUMN organization_name TEXT;
      
-- Your SQL goes here
ALTER TABLE roles ADD COLUMN entity_type VARCHAR(64);
```

### Configuration Changes
Diff of configuration changes between <code>v1.110.0</code> and <code>v1.111.0</code>
```patch
diff --git a/config/deployments/sandbox.toml b/config/deployments/sandbox.toml
index 5fb7bfe0d..730f78291 100644
--- a/config/deployments/sandbox.toml
+++ b/config/deployments/sandbox.toml
@@ -30,7 +30,7 @@ airwallex.base_url = "https://api-demo.airwallex.com/"
 applepay.base_url = "https://apple-pay-gateway.apple.com/"
 authorizedotnet.base_url = "https://apitest.authorize.net/xml/v1/request.api"
 bambora.base_url = "https://api.na.bambora.com"
-bamboraapac.base_url = "https://demo.ippayments.com.au/interface/api/dts.asmx"
+bamboraapac.base_url = "https://demo.ippayments.com.au/interface/api"
 bankofamerica.base_url = "https://apitest.merchant-services.bankofamerica.com/"
 billwerk.base_url = "https://api.reepay.com/"
 billwerk.secondary_base_url = "https://card.reepay.com/"
@@ -70,6 +70,7 @@ noon.key_mode = "Test"
 nuvei.base_url = "https://ppp-test.nuvei.com/"
 opayo.base_url = "https://pi-test.sagepay.com/"
 opennode.base_url = "https://dev-api.opennode.com"
+paybox.base_url = "https://preprod-ppps.paybox.com/PPPS.php"
 payeezy.base_url = "https://api-cert.payeezy.com/"
 payme.base_url = "https://sandbox.payme.io/"
 payone.base_url = "https://payment.preprod.payone.com/"

```

**Full Changelog:** [`v1.110.0...v1.111.0`](https://github.com/juspay/hyperswitch/compare/v1.110.0...v1.111.0)