mirror of
https://github.com/juspay/hyperswitch.git
synced 2025-11-01 19:42:27 +08:00
refactor(connectors): remove specific imports from connectors (#161)
This commit is contained in:
committed by
GitHub
parent
bf322c9535
commit
f3d3abf060
@ -1,4 +1,3 @@
|
|||||||
#![allow(dead_code)]
|
|
||||||
mod result_codes;
|
mod result_codes;
|
||||||
mod transformers;
|
mod transformers;
|
||||||
use std::fmt::Debug;
|
use std::fmt::Debug;
|
||||||
@ -8,14 +7,13 @@ use error_stack::{IntoReport, ResultExt};
|
|||||||
use transformers as aci;
|
use transformers as aci;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
core::errors::{self, CustomResult},
|
core::errors::{self, CustomResult},
|
||||||
headers,
|
headers,
|
||||||
services::{self, logger},
|
services::{self, logger},
|
||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, BytesExt},
|
utils::{self, BytesExt},
|
||||||
};
|
};
|
||||||
@ -32,7 +30,7 @@ impl api::ConnectorCommon for Aci {
|
|||||||
"application/x-www-form-urlencoded"
|
"application/x-www-form-urlencoded"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.aci.base_url
|
connectors.aci.base_url
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -114,7 +112,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth = aci::AciAuthType::try_from(&req.connector_auth_type)?;
|
let auth = aci::AciAuthType::try_from(&req.connector_auth_type)?;
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -133,7 +131,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -148,7 +146,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSyncRouterData,
|
data: &types::PaymentsSyncRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
||||||
where
|
where
|
||||||
types::PaymentsSyncData: Clone,
|
types::PaymentsSyncData: Clone,
|
||||||
@ -169,11 +167,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: aci::AciPaymentsResponse = res
|
let response: aci::AciPaymentsResponse = res
|
||||||
.parse_struct("AciPaymentsResponse")
|
.parse_struct("AciPaymentsResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.result.code,
|
code: response.result.code,
|
||||||
message: response.result.description,
|
message: response.result.description,
|
||||||
reason: response.result.parameter_errors.and_then(|errors| {
|
reason: response.result.parameter_errors.and_then(|errors| {
|
||||||
@ -218,7 +216,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsAuthorizeRouterData,
|
_req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!("{}{}", self.base_url(connectors), "v1/payments"))
|
Ok(format!("{}{}", self.base_url(connectors), "v1/payments"))
|
||||||
}
|
}
|
||||||
@ -241,7 +239,7 @@ impl
|
|||||||
types::PaymentsAuthorizeData,
|
types::PaymentsAuthorizeData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -259,7 +257,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
let response: aci::AciPaymentsResponse =
|
let response: aci::AciPaymentsResponse =
|
||||||
res.response
|
res.response
|
||||||
@ -276,11 +274,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: aci::AciPaymentsResponse = res
|
let response: aci::AciPaymentsResponse = res
|
||||||
.parse_struct("AciPaymentsResponse")
|
.parse_struct("AciPaymentsResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.result.code,
|
code: response.result.code,
|
||||||
message: response.result.description,
|
message: response.result.description,
|
||||||
reason: response.result.parameter_errors.and_then(|errors| {
|
reason: response.result.parameter_errors.and_then(|errors| {
|
||||||
@ -325,7 +323,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = &req.request.connector_transaction_id;
|
let id = &req.request.connector_transaction_id;
|
||||||
Ok(format!("{}v1/payments/{}", self.base_url(connectors), id))
|
Ok(format!("{}v1/payments/{}", self.base_url(connectors), id))
|
||||||
@ -342,7 +340,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -358,7 +356,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
let response: aci::AciPaymentsResponse =
|
let response: aci::AciPaymentsResponse =
|
||||||
res.response
|
res.response
|
||||||
@ -375,11 +373,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: aci::AciPaymentsResponse = res
|
let response: aci::AciPaymentsResponse = res
|
||||||
.parse_struct("AciPaymentsResponse")
|
.parse_struct("AciPaymentsResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.result.code,
|
code: response.result.code,
|
||||||
message: response.result.description,
|
message: response.result.description,
|
||||||
reason: response.result.parameter_errors.and_then(|errors| {
|
reason: response.result.parameter_errors.and_then(|errors| {
|
||||||
@ -424,7 +422,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let connector_payment_id = req.request.connector_transaction_id.clone();
|
let connector_payment_id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -446,7 +444,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -461,7 +459,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
logger::debug!(response=?res);
|
logger::debug!(response=?res);
|
||||||
|
|
||||||
@ -479,11 +477,11 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: aci::AciRefundResponse = res
|
let response: aci::AciRefundResponse = res
|
||||||
.parse_struct("AciRefundResponse")
|
.parse_struct("AciRefundResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.result.code,
|
code: response.result.code,
|
||||||
message: response.result.description,
|
message: response.result.description,
|
||||||
reason: response.result.parameter_errors.and_then(|errors| {
|
reason: response.result.parameter_errors.and_then(|errors| {
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
#![allow(dead_code)]
|
|
||||||
mod transformers;
|
mod transformers;
|
||||||
|
|
||||||
use std::fmt::Debug;
|
use std::fmt::Debug;
|
||||||
@ -9,7 +8,7 @@ use router_env::{tracing, tracing::instrument};
|
|||||||
|
|
||||||
use self::transformers as adyen;
|
use self::transformers as adyen;
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
core::{
|
core::{
|
||||||
errors::{self, CustomResult},
|
errors::{self, CustomResult},
|
||||||
payments,
|
payments,
|
||||||
@ -19,7 +18,6 @@ use crate::{
|
|||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, crypto, ByteSliceExt, BytesExt, OptionExt},
|
utils::{self, crypto, ByteSliceExt, BytesExt, OptionExt},
|
||||||
};
|
};
|
||||||
@ -43,7 +41,7 @@ impl api::ConnectorCommon for Adyen {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//FIXME with enum
|
//FIXME with enum
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.adyen.base_url
|
connectors.adyen.base_url
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -156,7 +154,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
_req: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}{}",
|
"{}{}",
|
||||||
@ -168,7 +166,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
req: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -184,7 +182,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
data: &types::RouterData<api::PSync, types::PaymentsSyncData, types::PaymentsResponseData>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
||||||
logger::debug!(payment_sync_response=?res);
|
logger::debug!(payment_sync_response=?res);
|
||||||
let response: adyen::AdyenPaymentResponse = res
|
let response: adyen::AdyenPaymentResponse = res
|
||||||
@ -203,11 +201,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: adyen::ErrorResponse = res
|
let response: adyen::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.error_code,
|
code: response.error_code,
|
||||||
message: response.message,
|
message: response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -248,7 +246,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsAuthorizeRouterData,
|
_req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!("{}{}", self.base_url(connectors), "v68/payments"))
|
Ok(format!("{}{}", self.base_url(connectors), "v68/payments"))
|
||||||
}
|
}
|
||||||
@ -269,7 +267,7 @@ impl
|
|||||||
types::PaymentsAuthorizeData,
|
types::PaymentsAuthorizeData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -287,7 +285,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
let response: adyen::AdyenPaymentResponse = res
|
let response: adyen::AdyenPaymentResponse = res
|
||||||
.response
|
.response
|
||||||
@ -305,11 +303,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: adyen::ErrorResponse = res
|
let response: adyen::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.error_code,
|
code: response.error_code,
|
||||||
message: response.message,
|
message: response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -343,7 +341,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsCancelRouterData,
|
_req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!("{}{}", self.base_url(connectors), "v68/cancel"))
|
Ok(format!("{}{}", self.base_url(connectors), "v68/cancel"))
|
||||||
}
|
}
|
||||||
@ -359,7 +357,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -376,7 +374,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
let response: adyen::AdyenCancelResponse = res
|
let response: adyen::AdyenCancelResponse = res
|
||||||
.response
|
.response
|
||||||
@ -393,12 +391,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: adyen::ErrorResponse = res
|
let response: adyen::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
logger::info!(response=?res);
|
logger::info!(response=?res);
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.error_code,
|
code: response.error_code,
|
||||||
message: response.message,
|
message: response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -432,7 +430,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let connector_payment_id = req.request.connector_transaction_id.clone();
|
let connector_payment_id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -454,7 +452,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -470,7 +468,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
let response: adyen::AdyenRefundResponse = res
|
let response: adyen::AdyenRefundResponse = res
|
||||||
.response
|
.response
|
||||||
@ -488,12 +486,12 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: adyen::ErrorResponse = res
|
let response: adyen::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
logger::info!(response=?res);
|
logger::info!(response=?res);
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.error_code,
|
code: response.error_code,
|
||||||
message: response.message,
|
message: response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
|
|||||||
@ -7,7 +7,7 @@ use serde::{Deserialize, Serialize};
|
|||||||
use crate::{
|
use crate::{
|
||||||
consts,
|
consts,
|
||||||
core::errors,
|
core::errors,
|
||||||
pii::{PeekInterface, Secret},
|
pii::{self, PeekInterface},
|
||||||
services,
|
services,
|
||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
@ -153,9 +153,9 @@ pub enum AdyenPaymentMethod {
|
|||||||
pub struct AdyenCard {
|
pub struct AdyenCard {
|
||||||
#[serde(rename = "type")]
|
#[serde(rename = "type")]
|
||||||
payment_type: String,
|
payment_type: String,
|
||||||
number: Option<Secret<String>>,
|
number: Option<pii::Secret<String>>,
|
||||||
expiry_month: Option<Secret<String>>,
|
expiry_month: Option<pii::Secret<String>>,
|
||||||
expiry_year: Option<Secret<String>>,
|
expiry_year: Option<pii::Secret<String>>,
|
||||||
cvc: Option<String>,
|
cvc: Option<String>,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -8,7 +8,7 @@ use error_stack::{IntoReport, ResultExt};
|
|||||||
use transformers as authorizedotnet;
|
use transformers as authorizedotnet;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
consts,
|
consts,
|
||||||
core::errors::{self, CustomResult},
|
core::errors::{self, CustomResult},
|
||||||
headers,
|
headers,
|
||||||
@ -16,7 +16,6 @@ use crate::{
|
|||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, BytesExt},
|
utils::{self, BytesExt},
|
||||||
};
|
};
|
||||||
@ -33,7 +32,7 @@ impl api::ConnectorCommon for Authorizedotnet {
|
|||||||
"application/json"
|
"application/json"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.authorizedotnet.base_url
|
connectors.authorizedotnet.base_url
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -102,7 +101,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsSyncRouterData,
|
_req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(self.base_url(connectors))
|
Ok(self.base_url(connectors))
|
||||||
}
|
}
|
||||||
@ -122,7 +121,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -136,7 +135,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSyncRouterData,
|
data: &types::PaymentsSyncRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
||||||
use bytes::Buf;
|
use bytes::Buf;
|
||||||
|
|
||||||
@ -161,7 +160,7 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
get_error_response(res)
|
get_error_response(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -194,7 +193,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsAuthorizeRouterData,
|
_req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(self.base_url(connectors))
|
Ok(self.base_url(connectors))
|
||||||
}
|
}
|
||||||
@ -217,7 +216,7 @@ impl
|
|||||||
types::PaymentsAuthorizeData,
|
types::PaymentsAuthorizeData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -235,7 +234,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
use bytes::Buf;
|
use bytes::Buf;
|
||||||
|
|
||||||
@ -261,7 +260,7 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
get_error_response(res)
|
get_error_response(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -293,7 +292,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsCancelRouterData,
|
_req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(self.base_url(connectors))
|
Ok(self.base_url(connectors))
|
||||||
}
|
}
|
||||||
@ -310,7 +309,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -326,7 +325,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
use bytes::Buf;
|
use bytes::Buf;
|
||||||
|
|
||||||
@ -352,7 +351,7 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
get_error_response(res)
|
get_error_response(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -385,7 +384,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RefundsRouterData<api::Execute>,
|
_req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(self.base_url(connectors))
|
Ok(self.base_url(connectors))
|
||||||
}
|
}
|
||||||
@ -404,7 +403,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -418,7 +417,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
use bytes::Buf;
|
use bytes::Buf;
|
||||||
logger::debug!(response=?res);
|
logger::debug!(response=?res);
|
||||||
@ -445,7 +444,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
get_error_response(res)
|
get_error_response(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -474,7 +473,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RefundsRouterData<api::RSync>,
|
_req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(self.base_url(connectors))
|
Ok(self.base_url(connectors))
|
||||||
}
|
}
|
||||||
@ -494,7 +493,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::RSync>,
|
req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -508,7 +507,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::RSync>,
|
data: &types::RefundsRouterData<api::RSync>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::RSync>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::RSync>, errors::ConnectorError> {
|
||||||
use bytes::Buf;
|
use bytes::Buf;
|
||||||
|
|
||||||
@ -533,7 +532,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
get_error_response(res)
|
get_error_response(res)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -565,7 +564,7 @@ impl api::IncomingWebhook for Authorizedotnet {
|
|||||||
impl services::ConnectorRedirectResponse for Authorizedotnet {}
|
impl services::ConnectorRedirectResponse for Authorizedotnet {}
|
||||||
|
|
||||||
#[inline]
|
#[inline]
|
||||||
fn get_error_response(bytes: Bytes) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
fn get_error_response(bytes: Bytes) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: authorizedotnet::AuthorizedotnetPaymentsResponse = bytes
|
let response: authorizedotnet::AuthorizedotnetPaymentsResponse = bytes
|
||||||
.parse_struct("AuthorizedotnetPaymentsResponse")
|
.parse_struct("AuthorizedotnetPaymentsResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|||||||
@ -5,9 +5,9 @@ use std::fmt::Debug;
|
|||||||
use bytes::Bytes;
|
use bytes::Bytes;
|
||||||
use error_stack::ResultExt;
|
use error_stack::ResultExt;
|
||||||
|
|
||||||
use self::{braintree::BraintreeAuthType, transformers as braintree};
|
use self::transformers as braintree;
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
consts,
|
consts,
|
||||||
core::{
|
core::{
|
||||||
errors::{self, CustomResult},
|
errors::{self, CustomResult},
|
||||||
@ -17,7 +17,6 @@ use crate::{
|
|||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, BytesExt},
|
utils::{self, BytesExt},
|
||||||
};
|
};
|
||||||
@ -30,7 +29,7 @@ impl api::ConnectorCommon for Braintree {
|
|||||||
"braintree"
|
"braintree"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.braintree.base_url
|
connectors.braintree.base_url
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -86,7 +85,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSessionRouterData,
|
req: &types::PaymentsSessionRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
||||||
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
||||||
@ -100,7 +99,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSessionRouterData,
|
req: &types::PaymentsSessionRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = Some(
|
let request = Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -118,12 +117,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: braintree::ErrorResponse = res
|
let response: braintree::ErrorResponse = res
|
||||||
.parse_struct("Error Response")
|
.parse_struct("Error Response")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: consts::NO_ERROR_CODE.to_string(),
|
code: consts::NO_ERROR_CODE.to_string(),
|
||||||
message: response.api_error_response.message,
|
message: response.api_error_response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -145,7 +144,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSessionRouterData,
|
data: &types::PaymentsSessionRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSessionRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsSessionRouterData, errors::ConnectorError> {
|
||||||
logger::debug!(payment_session_response_braintree=?res);
|
logger::debug!(payment_session_response_braintree=?res);
|
||||||
let response: braintree::BraintreeSessionTokenResponse = res
|
let response: braintree::BraintreeSessionTokenResponse = res
|
||||||
@ -214,7 +213,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
||||||
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
||||||
@ -234,7 +233,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -249,12 +248,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: braintree::ErrorResponse = res
|
let response: braintree::ErrorResponse = res
|
||||||
.parse_struct("Braintree Error Response")
|
.parse_struct("Braintree Error Response")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: consts::NO_ERROR_CODE.to_string(),
|
code: consts::NO_ERROR_CODE.to_string(),
|
||||||
message: response.api_error_response.message,
|
message: response.api_error_response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -271,7 +270,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSyncRouterData,
|
data: &types::PaymentsSyncRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError> {
|
||||||
logger::debug!(payment_sync_response=?res);
|
logger::debug!(payment_sync_response=?res);
|
||||||
let response: braintree::BraintreePaymentsResponse = res
|
let response: braintree::BraintreePaymentsResponse = res
|
||||||
@ -315,9 +314,9 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsAuthorizeRouterData,
|
req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth_type = BraintreeAuthType::try_from(&req.connector_auth_type)
|
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
||||||
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
||||||
|
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -330,7 +329,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsAuthorizeRouterData,
|
req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -357,7 +356,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
let response: braintree::BraintreePaymentsResponse = res
|
let response: braintree::BraintreePaymentsResponse = res
|
||||||
.response
|
.response
|
||||||
@ -376,13 +375,13 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
logger::debug!(braintreepayments_create_response=?res);
|
logger::debug!(braintreepayments_create_response=?res);
|
||||||
|
|
||||||
let response: braintree::ErrorResponse = res
|
let response: braintree::ErrorResponse = res
|
||||||
.parse_struct("Braintree ErrorResponse")
|
.parse_struct("Braintree ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: consts::NO_ERROR_CODE.to_string(),
|
code: consts::NO_ERROR_CODE.to_string(),
|
||||||
message: response.api_error_response.message,
|
message: response.api_error_response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -422,7 +421,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
||||||
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
||||||
@ -437,7 +436,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -452,12 +451,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: braintree::ErrorResponse = res
|
let response: braintree::ErrorResponse = res
|
||||||
.parse_struct("Braintree ErrorResponse")
|
.parse_struct("Braintree ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: consts::NO_ERROR_CODE.to_string(),
|
code: consts::NO_ERROR_CODE.to_string(),
|
||||||
message: response.api_error_response.message,
|
message: response.api_error_response.message,
|
||||||
reason: None,
|
reason: None,
|
||||||
@ -474,7 +473,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
logger::debug!(payment_sync_response=?res);
|
logger::debug!(payment_sync_response=?res);
|
||||||
let response: braintree::BraintreePaymentsResponse = res
|
let response: braintree::BraintreePaymentsResponse = res
|
||||||
@ -522,9 +521,9 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let auth_type = BraintreeAuthType::try_from(&req.connector_auth_type)
|
let auth_type = braintree::BraintreeAuthType::try_from(&req.connector_auth_type)
|
||||||
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
.change_context(errors::ConnectorError::FailedToObtainAuthType)?;
|
||||||
let connector_payment_id = req.request.connector_transaction_id.clone();
|
let connector_payment_id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -548,7 +547,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -562,7 +561,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
logger::debug!(target: "router::connector::braintree", response=?res);
|
logger::debug!(target: "router::connector::braintree", response=?res);
|
||||||
let response: braintree::RefundResponse = res
|
let response: braintree::RefundResponse = res
|
||||||
@ -581,7 +580,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
_res: Bytes,
|
_res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -604,7 +603,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
_req: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
||||||
_connectors: Connectors,
|
_connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
||||||
}
|
}
|
||||||
@ -612,7 +611,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
_res: Bytes,
|
_res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
Err(errors::ConnectorError::NotImplemented("braintree".to_string()).into())
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -626,7 +625,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
_req: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
||||||
_connectors: Connectors,
|
_connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(None)
|
Ok(None)
|
||||||
}
|
}
|
||||||
@ -634,7 +633,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
data: &types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<
|
) -> CustomResult<
|
||||||
types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
||||||
errors::ConnectorError,
|
errors::ConnectorError,
|
||||||
|
|||||||
@ -9,7 +9,7 @@ use error_stack::{IntoReport, ResultExt};
|
|||||||
|
|
||||||
use self::transformers as checkout;
|
use self::transformers as checkout;
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
consts,
|
consts,
|
||||||
core::{
|
core::{
|
||||||
errors::{self, CustomResult},
|
errors::{self, CustomResult},
|
||||||
@ -19,7 +19,6 @@ use crate::{
|
|||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, BytesExt, OptionExt},
|
utils::{self, BytesExt, OptionExt},
|
||||||
};
|
};
|
||||||
@ -46,7 +45,7 @@ impl api::ConnectorCommon for Checkout {
|
|||||||
Ok(vec![(headers::AUTHORIZATION.to_string(), auth.api_key)])
|
Ok(vec![(headers::AUTHORIZATION.to_string(), auth.api_key)])
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.checkout.base_url
|
connectors.checkout.base_url
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -113,7 +112,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}{}{}",
|
"{}{}{}",
|
||||||
@ -129,7 +128,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -145,7 +144,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSyncRouterData,
|
data: &types::PaymentsSyncRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
||||||
where
|
where
|
||||||
api::PSync: Clone,
|
api::PSync: Clone,
|
||||||
@ -169,11 +168,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: checkout::ErrorResponse = res
|
let response: checkout::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error_codes
|
.error_codes
|
||||||
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
||||||
@ -212,7 +211,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsAuthorizeRouterData,
|
_req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!("{}{}", self.base_url(connectors), "payments"))
|
Ok(format!("{}{}", self.base_url(connectors), "payments"))
|
||||||
}
|
}
|
||||||
@ -232,7 +231,7 @@ impl
|
|||||||
types::PaymentsAuthorizeData,
|
types::PaymentsAuthorizeData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -250,7 +249,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
//TODO: [ORCA-618] If 3ds fails, the response should be a redirect response, to redirect client to success/failed page
|
//TODO: [ORCA-618] If 3ds fails, the response should be a redirect response, to redirect client to success/failed page
|
||||||
let response: checkout::PaymentsResponse = res
|
let response: checkout::PaymentsResponse = res
|
||||||
@ -269,11 +268,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: checkout::ErrorResponse = res
|
let response: checkout::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error_codes
|
.error_codes
|
||||||
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
||||||
@ -314,7 +313,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}payments/{}/voids",
|
"{}payments/{}/voids",
|
||||||
@ -334,7 +333,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -349,7 +348,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
let mut response: checkout::PaymentVoidResponse = res
|
let mut response: checkout::PaymentVoidResponse = res
|
||||||
.response
|
.response
|
||||||
@ -368,11 +367,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: checkout::ErrorResponse = res
|
let response: checkout::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error_codes
|
.error_codes
|
||||||
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
||||||
@ -416,7 +415,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = req.request.connector_transaction_id.clone();
|
let id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -438,7 +437,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -452,7 +451,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
logger::debug!(response=?res);
|
logger::debug!(response=?res);
|
||||||
let response: checkout::RefundResponse = res
|
let response: checkout::RefundResponse = res
|
||||||
@ -475,11 +474,11 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: checkout::ErrorResponse = res
|
let response: checkout::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error_codes
|
.error_codes
|
||||||
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
||||||
@ -516,7 +515,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::RSync>,
|
req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = req.request.connector_transaction_id.clone();
|
let id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -529,7 +528,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::RSync>,
|
req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -544,7 +543,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::RSync>,
|
data: &types::RefundsRouterData<api::RSync>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::RSync>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::RSync>, errors::ConnectorError> {
|
||||||
let refund_action_id = data
|
let refund_action_id = data
|
||||||
.response
|
.response
|
||||||
@ -575,11 +574,11 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: checkout::ErrorResponse = res
|
let response: checkout::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error_codes
|
.error_codes
|
||||||
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
.unwrap_or_else(|| vec![consts::NO_ERROR_CODE.to_string()])
|
||||||
|
|||||||
@ -4,12 +4,11 @@ use url::Url;
|
|||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
core::errors,
|
core::errors,
|
||||||
pii::{self, Secret},
|
pii, services,
|
||||||
services,
|
|
||||||
types::{
|
types::{
|
||||||
self, api,
|
self, api,
|
||||||
storage::enums,
|
storage::enums,
|
||||||
transformers::{Foreign, ForeignFrom},
|
transformers::{self, ForeignFrom},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -17,9 +16,9 @@ use crate::{
|
|||||||
pub struct CardSource {
|
pub struct CardSource {
|
||||||
#[serde(rename = "type")]
|
#[serde(rename = "type")]
|
||||||
pub source_type: Option<String>,
|
pub source_type: Option<String>,
|
||||||
pub number: Option<Secret<String, pii::CardNumber>>,
|
pub number: Option<pii::Secret<String, pii::CardNumber>>,
|
||||||
pub expiry_month: Option<Secret<String>>,
|
pub expiry_month: Option<pii::Secret<String>>,
|
||||||
pub expiry_year: Option<Secret<String>>,
|
pub expiry_year: Option<pii::Secret<String>>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Serialize)]
|
#[derive(Debug, Serialize)]
|
||||||
@ -142,10 +141,12 @@ pub enum CheckoutPaymentStatus {
|
|||||||
Captured,
|
Captured,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl From<Foreign<(CheckoutPaymentStatus, Option<enums::CaptureMethod>)>>
|
impl From<transformers::Foreign<(CheckoutPaymentStatus, Option<enums::CaptureMethod>)>>
|
||||||
for Foreign<enums::AttemptStatus>
|
for transformers::Foreign<enums::AttemptStatus>
|
||||||
{
|
{
|
||||||
fn from(item: Foreign<(CheckoutPaymentStatus, Option<enums::CaptureMethod>)>) -> Self {
|
fn from(
|
||||||
|
item: transformers::Foreign<(CheckoutPaymentStatus, Option<enums::CaptureMethod>)>,
|
||||||
|
) -> Self {
|
||||||
let item = item.0;
|
let item = item.0;
|
||||||
let status = item.0;
|
let status = item.0;
|
||||||
let capture_method = item.1;
|
let capture_method = item.1;
|
||||||
|
|||||||
@ -7,14 +7,13 @@ use error_stack::{IntoReport, ResultExt};
|
|||||||
use transformers as klarna;
|
use transformers as klarna;
|
||||||
|
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
core::errors::{self, CustomResult},
|
core::errors::{self, CustomResult},
|
||||||
headers,
|
headers,
|
||||||
services::{self, logger},
|
services::{self, logger},
|
||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, BytesExt},
|
utils::{self, BytesExt},
|
||||||
};
|
};
|
||||||
@ -31,7 +30,7 @@ impl api::ConnectorCommon for Klarna {
|
|||||||
"application/x-www-form-urlencoded"
|
"application/x-www-form-urlencoded"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
connectors.klarna.base_url
|
connectors.klarna.base_url
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -84,7 +83,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsSessionRouterData,
|
_req: &types::PaymentsSessionRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}{}",
|
"{}{}",
|
||||||
@ -107,7 +106,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSessionRouterData,
|
req: &types::PaymentsSessionRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -123,7 +122,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSessionRouterData,
|
data: &types::PaymentsSessionRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSessionRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsSessionRouterData, errors::ConnectorError> {
|
||||||
let response: klarna::KlarnaSessionResponse = res
|
let response: klarna::KlarnaSessionResponse = res
|
||||||
.response
|
.response
|
||||||
@ -140,11 +139,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: klarna::KlarnaErrorResponse = res
|
let response: klarna::KlarnaErrorResponse = res
|
||||||
.parse_struct("KlarnaErrorResponse")
|
.parse_struct("KlarnaErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response.error_code,
|
code: response.error_code,
|
||||||
message: response.error_messages.join(" & "),
|
message: response.error_messages.join(" & "),
|
||||||
reason: None,
|
reason: None,
|
||||||
|
|||||||
@ -8,7 +8,7 @@ use router_env::{tracing, tracing::instrument};
|
|||||||
|
|
||||||
use self::transformers as stripe;
|
use self::transformers as stripe;
|
||||||
use crate::{
|
use crate::{
|
||||||
configs::settings::Connectors,
|
configs::settings,
|
||||||
consts,
|
consts,
|
||||||
core::errors::{self, CustomResult},
|
core::errors::{self, CustomResult},
|
||||||
db::StorageInterface,
|
db::StorageInterface,
|
||||||
@ -16,7 +16,6 @@ use crate::{
|
|||||||
types::{
|
types::{
|
||||||
self,
|
self,
|
||||||
api::{self, ConnectorCommon},
|
api::{self, ConnectorCommon},
|
||||||
ErrorResponse, Response,
|
|
||||||
},
|
},
|
||||||
utils::{self, crypto, ByteSliceExt, BytesExt, OptionExt},
|
utils::{self, crypto, ByteSliceExt, BytesExt, OptionExt},
|
||||||
};
|
};
|
||||||
@ -33,7 +32,7 @@ impl api::ConnectorCommon for Stripe {
|
|||||||
"application/x-www-form-urlencoded"
|
"application/x-www-form-urlencoded"
|
||||||
}
|
}
|
||||||
|
|
||||||
fn base_url(&self, connectors: Connectors) -> String {
|
fn base_url(&self, connectors: settings::Connectors) -> String {
|
||||||
// &self.base_url
|
// &self.base_url
|
||||||
connectors.stripe.base_url
|
connectors.stripe.base_url
|
||||||
}
|
}
|
||||||
@ -100,7 +99,7 @@ impl
|
|||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCaptureRouterData,
|
req: &types::PaymentsCaptureRouterData,
|
||||||
|
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = req.request.connector_transaction_id.as_str();
|
let id = req.request.connector_transaction_id.as_str();
|
||||||
|
|
||||||
@ -125,7 +124,7 @@ impl
|
|||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCaptureRouterData,
|
req: &types::PaymentsCaptureRouterData,
|
||||||
|
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -140,7 +139,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCaptureRouterData,
|
data: &types::PaymentsCaptureRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCaptureRouterData, errors::ConnectorError>
|
) -> CustomResult<types::PaymentsCaptureRouterData, errors::ConnectorError>
|
||||||
where
|
where
|
||||||
types::PaymentsCaptureData: Clone,
|
types::PaymentsCaptureData: Clone,
|
||||||
@ -161,12 +160,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -207,7 +206,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = req.request.connector_transaction_id.clone();
|
let id = req.request.connector_transaction_id.clone();
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -222,7 +221,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsSyncRouterData,
|
req: &types::PaymentsSyncRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -237,7 +236,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsSyncRouterData,
|
data: &types::PaymentsSyncRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
) -> CustomResult<types::PaymentsSyncRouterData, errors::ConnectorError>
|
||||||
where
|
where
|
||||||
types::PaymentsAuthorizeData: Clone,
|
types::PaymentsAuthorizeData: Clone,
|
||||||
@ -259,12 +258,12 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
|
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -308,7 +307,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::PaymentsAuthorizeRouterData,
|
_req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}{}",
|
"{}{}",
|
||||||
@ -329,7 +328,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsAuthorizeRouterData,
|
req: &types::PaymentsAuthorizeRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -347,7 +346,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsAuthorizeRouterData,
|
data: &types::PaymentsAuthorizeRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsAuthorizeRouterData, errors::ConnectorError> {
|
||||||
logger::debug!(stripe_payments_create_response=?res);
|
logger::debug!(stripe_payments_create_response=?res);
|
||||||
let response: stripe::PaymentIntentResponse = res
|
let response: stripe::PaymentIntentResponse = res
|
||||||
@ -366,11 +365,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -414,7 +413,7 @@ impl
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let payment_id = &req.request.connector_transaction_id;
|
let payment_id = &req.request.connector_transaction_id;
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
@ -435,7 +434,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::PaymentsCancelRouterData,
|
req: &types::PaymentsCancelRouterData,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -449,7 +448,7 @@ impl
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::PaymentsCancelRouterData,
|
data: &types::PaymentsCancelRouterData,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
) -> CustomResult<types::PaymentsCancelRouterData, errors::ConnectorError> {
|
||||||
let response: stripe::PaymentIntentResponse = res
|
let response: stripe::PaymentIntentResponse = res
|
||||||
.response
|
.response
|
||||||
@ -467,11 +466,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -524,7 +523,7 @@ impl
|
|||||||
types::VerifyRequestData,
|
types::VerifyRequestData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!(
|
Ok(format!(
|
||||||
"{}{}",
|
"{}{}",
|
||||||
@ -545,7 +544,7 @@ impl
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RouterData<api::Verify, types::VerifyRequestData, types::PaymentsResponseData>,
|
req: &types::RouterData<api::Verify, types::VerifyRequestData, types::PaymentsResponseData>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -565,7 +564,7 @@ impl
|
|||||||
types::VerifyRequestData,
|
types::VerifyRequestData,
|
||||||
types::PaymentsResponseData,
|
types::PaymentsResponseData,
|
||||||
>,
|
>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<
|
) -> CustomResult<
|
||||||
types::RouterData<api::Verify, types::VerifyRequestData, types::PaymentsResponseData>,
|
types::RouterData<api::Verify, types::VerifyRequestData, types::PaymentsResponseData>,
|
||||||
errors::ConnectorError,
|
errors::ConnectorError,
|
||||||
@ -591,11 +590,11 @@ impl
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -640,7 +639,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
_req: &types::RefundsRouterData<api::Execute>,
|
_req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
Ok(format!("{}{}", self.base_url(connectors), "v1/refunds"))
|
Ok(format!("{}{}", self.base_url(connectors), "v1/refunds"))
|
||||||
}
|
}
|
||||||
@ -657,7 +656,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::Execute>,
|
req: &types::RefundsRouterData<api::Execute>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
let request = services::RequestBuilder::new()
|
let request = services::RequestBuilder::new()
|
||||||
.method(services::Method::Post)
|
.method(services::Method::Post)
|
||||||
@ -672,7 +671,7 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::Execute>,
|
data: &types::RefundsRouterData<api::Execute>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
) -> CustomResult<types::RefundsRouterData<api::Execute>, errors::ConnectorError> {
|
||||||
logger::debug!(response=?res);
|
logger::debug!(response=?res);
|
||||||
|
|
||||||
@ -691,11 +690,11 @@ impl services::ConnectorIntegration<api::Execute, types::RefundsData, types::Ref
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
@ -735,7 +734,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_url(
|
fn get_url(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::RSync>,
|
req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<String, errors::ConnectorError> {
|
) -> CustomResult<String, errors::ConnectorError> {
|
||||||
let id = req
|
let id = req
|
||||||
.response
|
.response
|
||||||
@ -751,7 +750,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn build_request(
|
fn build_request(
|
||||||
&self,
|
&self,
|
||||||
req: &types::RefundsRouterData<api::RSync>,
|
req: &types::RefundsRouterData<api::RSync>,
|
||||||
connectors: Connectors,
|
connectors: settings::Connectors,
|
||||||
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
) -> CustomResult<Option<services::Request>, errors::ConnectorError> {
|
||||||
Ok(Some(
|
Ok(Some(
|
||||||
services::RequestBuilder::new()
|
services::RequestBuilder::new()
|
||||||
@ -769,7 +768,7 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn handle_response(
|
fn handle_response(
|
||||||
&self,
|
&self,
|
||||||
data: &types::RefundsRouterData<api::RSync>,
|
data: &types::RefundsRouterData<api::RSync>,
|
||||||
res: Response,
|
res: types::Response,
|
||||||
) -> CustomResult<
|
) -> CustomResult<
|
||||||
types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
types::RouterData<api::RSync, types::RefundsData, types::RefundsResponseData>,
|
||||||
errors::ConnectorError,
|
errors::ConnectorError,
|
||||||
@ -791,11 +790,11 @@ impl services::ConnectorIntegration<api::RSync, types::RefundsData, types::Refun
|
|||||||
fn get_error_response(
|
fn get_error_response(
|
||||||
&self,
|
&self,
|
||||||
res: Bytes,
|
res: Bytes,
|
||||||
) -> CustomResult<ErrorResponse, errors::ConnectorError> {
|
) -> CustomResult<types::ErrorResponse, errors::ConnectorError> {
|
||||||
let response: stripe::ErrorResponse = res
|
let response: stripe::ErrorResponse = res
|
||||||
.parse_struct("ErrorResponse")
|
.parse_struct("ErrorResponse")
|
||||||
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
.change_context(errors::ConnectorError::ResponseDeserializationFailed)?;
|
||||||
Ok(ErrorResponse {
|
Ok(types::ErrorResponse {
|
||||||
code: response
|
code: response
|
||||||
.error
|
.error
|
||||||
.code
|
.code
|
||||||
|
|||||||
Reference in New Issue
Block a user