Skip to content

Commit

Permalink
Added cloud endpoint support
Browse files Browse the repository at this point in the history
  • Loading branch information
Kwok He Chu committed Jan 3, 2024
1 parent edc6e7c commit ade0bc2
Show file tree
Hide file tree
Showing 4 changed files with 18 additions and 11 deletions.
16 changes: 8 additions & 8 deletions in-person-payments-example/Controllers/ApiController.cs
Original file line number Diff line number Diff line change
Expand Up @@ -85,10 +85,10 @@ public async Task<ActionResult<CreatePaymentResponse>> CreatePayment([FromBody]
{
case ResultType.Success:
table.PaymentStatus = PaymentStatus.Paid;
table.PaymentStatusDetails.PoiTransactionId = paymentResponse.POIData.POITransactionID.TransactionID;
table.PaymentStatusDetails.PoiTransactionTimeStamp = paymentResponse.POIData.POITransactionID.TimeStamp;
table.PaymentStatusDetails.SaleTransactionId = paymentResponse.SaleData.SaleTransactionID.TransactionID;
table.PaymentStatusDetails.SaleTransactionTimeStamp = paymentResponse.SaleData.SaleTransactionID.TimeStamp;
table.PaymentStatusDetails.PoiTransactionId = paymentResponse.POIData?.POITransactionID?.TransactionID;
table.PaymentStatusDetails.PoiTransactionTimeStamp = paymentResponse.POIData?.POITransactionID?.TimeStamp;
table.PaymentStatusDetails.SaleTransactionId = paymentResponse.SaleData?.SaleTransactionID?.TransactionID;
table.PaymentStatusDetails.SaleTransactionTimeStamp = paymentResponse.SaleData?.SaleTransactionID?.TimeStamp;

return Ok(new CreatePaymentResponse()
{
Expand All @@ -97,10 +97,10 @@ public async Task<ActionResult<CreatePaymentResponse>> CreatePayment([FromBody]
case ResultType.Failure:
table.PaymentStatus = PaymentStatus.NotPaid;
table.PaymentStatusDetails.RefusalReason = "Payment terminal responded with: " + paymentResponse.Response.ErrorCondition;
table.PaymentStatusDetails.PoiTransactionId = paymentResponse.POIData.POITransactionID.TransactionID;
table.PaymentStatusDetails.PoiTransactionTimeStamp = paymentResponse.POIData.POITransactionID.TimeStamp;
table.PaymentStatusDetails.SaleTransactionId = paymentResponse.SaleData.SaleTransactionID.TransactionID;
table.PaymentStatusDetails.SaleTransactionTimeStamp = paymentResponse.SaleData.SaleTransactionID.TimeStamp;
table.PaymentStatusDetails.PoiTransactionId = paymentResponse.POIData?.POITransactionID?.TransactionID;
table.PaymentStatusDetails.PoiTransactionTimeStamp = paymentResponse.POIData?.POITransactionID?.TimeStamp;
table.PaymentStatusDetails.SaleTransactionId = paymentResponse.SaleData?.SaleTransactionID?.TransactionID;
table.PaymentStatusDetails.SaleTransactionTimeStamp = paymentResponse.SaleData?.SaleTransactionID?.TimeStamp;

return Ok(new CreatePaymentResponse()
{
Expand Down
7 changes: 6 additions & 1 deletion in-person-payments-example/Options/AdyenOptions.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,12 @@ public class AdyenOptions
/// <summary>
/// Your unique ID for the POS system (cash register) to send this request from.
/// </summary>
public string ADYEN_POS_SALE_ID { get; set; }
public string ADYEN_POS_SALE_ID { get; set; }

/// <summary>
/// Default: null, unless you want to override this to point to a different endpoint based on your region.
/// See https://docs.adyen.com/point-of-sale/design-your-integration/terminal-api/#cloud.
/// </summary>
public string ADYEN_TERMINAL_API_CLOUD_ENDPOINT { get; set; }
}
}
4 changes: 3 additions & 1 deletion in-person-payments-example/Startup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ public void ConfigureServices(IServiceCollection services)
options.ADYEN_API_KEY = Configuration[nameof(AdyenOptions.ADYEN_API_KEY)];
options.ADYEN_HMAC_KEY = Configuration[nameof(AdyenOptions.ADYEN_HMAC_KEY)];
options.ADYEN_POS_POI_ID = Configuration[nameof(AdyenOptions.ADYEN_POS_POI_ID)];
options.ADYEN_TERMINAL_API_CLOUD_ENDPOINT = Configuration[nameof(AdyenOptions.ADYEN_TERMINAL_API_CLOUD_ENDPOINT)];
options.ADYEN_POS_SALE_ID = "SALE_ID_POS_42";
}
);
Expand All @@ -57,7 +58,8 @@ public void ConfigureServices(IServiceCollection services)
XApiKey = options.Value.ADYEN_API_KEY,
// Test environment.
Environment = Adyen.Model.Environment.Test,
Timeout = 180
Timeout = 180,
CloudApiEndPoint = options.Value.ADYEN_TERMINAL_API_CLOUD_ENDPOINT
},
provider.GetRequiredService<IHttpClientFactory>(),
httpClientName
Expand Down
2 changes: 1 addition & 1 deletion in-person-payments-loyalty-example/Startup.cs
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public void ConfigureServices(IServiceCollection services)
XApiKey = options.Value.ADYEN_API_KEY,
// Test environment.
Environment = Adyen.Model.Environment.Test,
Timeout = 180,
Timeout = 180
},
provider.GetRequiredService<IHttpClientFactory>(),
httpClientName
Expand Down

0 comments on commit ade0bc2

Please sign in to comment.