Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions src/main/java/io/craftgate/adapter/PaymentAdapter.java
Original file line number Diff line number Diff line change
Expand Up @@ -297,6 +297,12 @@ public StoredCardListResponse retrieveProviderCards(RetrieveProviderCardRequest
return HttpClient.get(requestOptions.getBaseUrl() + path, createHeaders(path, requestOptions), StoredCardListResponse.class);
}

public IVRCardTokenizationResponse retrieveCardFromIvr(RetrieveCardFromIvrRequest retrieveCardFromIvrRequest) {
String query = RequestQueryParamsBuilder.buildQueryParam(retrieveCardFromIvrRequest);
String path = "/payment/v1/ivr-cards" + query;
return HttpClient.get(requestOptions.getBaseUrl() + path, createHeaders(path, requestOptions), IVRCardTokenizationResponse.class);
}

public CreateDepositToCardPaymentResponse depositToCard(CreateDepositToCardRequest createDepositToCardRequest) {
String path = "/payment/v1/card-payments/deposit-to-card";
return HttpClient.post(requestOptions.getBaseUrl() + path, createHeaders(createDepositToCardRequest, path, requestOptions),
Expand Down
12 changes: 12 additions & 0 deletions src/main/java/io/craftgate/request/RetrieveCardFromIvrRequest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package io.craftgate.request;

import lombok.Builder;
import lombok.Data;

@Data
@Builder
public class RetrieveCardFromIvrRequest {

private String callToken;
private String cardUserKey;
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
package io.craftgate.response;

import lombok.Data;

@Data
public class IVRCardTokenizationResponse {

private String binNumber;
private String lastFourDigits;
private String cardUserKey;
private String cardToken;
private String secureFieldsToken;
}
12 changes: 12 additions & 0 deletions src/test/java/io/craftgate/sample/PaymentSample.java
Original file line number Diff line number Diff line change
Expand Up @@ -2348,6 +2348,18 @@ void retrieve_provider_card() {
assertNotNull(response);
}

@Test
void retrieve_ivr_card() {
RetrieveCardFromIvrRequest retrieveCardFromIvrRequest = RetrieveCardFromIvrRequest.builder()
.cardUserKey("45f12c74-3000-465c-96dc-876850e7dd7a")
.callToken("0309ac2d-c5a5-4b4f-a91f-5c444ba07b24")
.build();

IVRCardTokenizationResponse response = craftgate.payment().retrieveCardFromIvr(retrieveCardFromIvrRequest);

assertNotNull(response);
}

@Test
void should_validate_3D_secure_callback_verified() {
//given
Expand Down
Loading