commit 9e230bf31494cdc0a841a63c5c35967be7ed0470
parent 6126e4259c8c916e5498a053d8c4413e72b38c09
Author: Florian Dold <florian@dold.me>
Date: Wed, 19 Feb 2025 12:22:06 +0100
harness: check merchant status flag
Diffstat:
2 files changed, 20 insertions(+), 28 deletions(-)
diff --git a/packages/taler-harness/src/integrationtests/test-kyc-merchant-deposit.ts b/packages/taler-harness/src/integrationtests/test-kyc-merchant-deposit.ts
@@ -27,6 +27,7 @@ import {
j2s,
Logger,
MerchantAccountKycRedirectsResponse,
+ MerchantAccountKycStatus,
TalerMerchantApi,
WireGatewayApiClient,
} from "@gnu-taler/taler-util";
@@ -146,6 +147,11 @@ export async function runKycMerchantDepositTest(t: GlobalTestState) {
logger.info(`mechant kyc status: ${j2s(kycRespOne)}`);
+ t.assertDeepEqual(
+ kycRespOne.kyc_data[0].status,
+ MerchantAccountKycStatus.KYC_WIRE_REQUIRED,
+ );
+
t.assertDeepEqual(kycRespOne.kyc_data[0].exchange_http_status, 404);
t.assertTrue(
diff --git a/packages/taler-util/src/http-client/merchant.ts b/packages/taler-util/src/http-client/merchant.ts
@@ -19,6 +19,7 @@ import {
FailCasesByMethod,
HttpStatusCode,
LibtoolVersion,
+ OperationAlternative,
OperationFail,
OperationOk,
PaginationParams,
@@ -630,10 +631,21 @@ export class TalerMerchantInstanceHttpClient {
/**
* https://docs.taler.net/core/api-merchant.html#get--instances-$INSTANCE-private-kyc
*/
- async getCurrentIntanceKycStatus(
+ async getCurrentInstanceKycStatus(
token: AccessToken | undefined,
params: TalerMerchantApi.GetKycStatusRequestParams = {},
- ) {
+ ): Promise<
+ | OperationOk<TalerMerchantApi.MerchantAccountKycRedirectsResponse>
+ | OperationOk<void>
+ | OperationAlternative<
+ HttpStatusCode.BadGateway,
+ TalerMerchantApi.MerchantAccountKycRedirectsResponse
+ >
+ | OperationFail<HttpStatusCode.Unauthorized>
+ | OperationFail<HttpStatusCode.NotFound>
+ | OperationFail<HttpStatusCode.ServiceUnavailable>
+ | OperationFail<HttpStatusCode.GatewayTimeout>
+ > {
const url = new URL(`private/kyc`, this.baseUrl);
if (params.wireHash) {
@@ -2650,29 +2662,3 @@ export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttp
}
}
}
-
-// 2024-09-23T01:23:14.421Z http.ts INFO malformed error response (status 200): {
-// "kyc_data": [
-// {
-// "payto_uri": "payto://iban/DE1327812254798?receiver-name=the%20name%20of%20merchant",
-// "exchange_url": "http://exchange.taler.test:1180/",
-// "no_keys": false,
-// "auth_conflict": false,
-// "exchange_http_status": 204,
-// "limits": [],
-// "payto_kycauths": [
-// "payto://iban/DE9714548806481?receiver-name=Exchanger+Normal&subject=54DR9R0CEWA1A7FK3QWABJ1PRBCD2X6S418Y5DE0P9Q1ASKTX770"
-// ]
-// },
-// {
-// "payto_uri": "payto://iban/DE1327812254798?receiver-name=the%20name%20of%20merchant",
-// "exchange_url": "https://exchange.demo.taler.net/",
-// "no_keys": false,
-// "auth_conflict": false,
-// "exchange_http_status": 400,
-// "exchange_code": 26,
-// "access_token": "0000000000000000000000000000000000000000000000000000",
-// "limits": []
-// }
-// ]
-// }