Sample code for 30+ languages & platforms
Delphi ActiveX Requires Chilkat v11.0.0+

Adyen Verify Payment Result

See more Adyen Examples

Once a payment has completed, this verifies the result from your server with a /payments/result request.

Chilkat Delphi ActiveX Downloads

Delphi ActiveX
var
success: Integer;
http: TChilkatHttp;
json: TChilkatJsonObject;
resp: TChilkatHttpResponse;
sbResponseBody: TChilkatStringBuilder;
jResp: TChilkatJsonObject;
respStatusCode: Integer;
pspReference: WideString;
resultCode: WideString;
merchantReference: WideString;
paymentMethod: WideString;
shopperLocale: WideString;

begin
success := 0;

http := TChilkatHttp.Create(Self);

//  Use this online tool to generate the code from sample JSON:
//  Generate Code to Create JSON

//  The following JSON is sent in the request body.

//  {
//    "payload": "2he28Ddhwj242he28Ddhwj..."
//  }
json := TChilkatJsonObject.Create(Self);
json.UpdateString('payload','2he28Ddhwj242he28Ddhwj...');

http.SetRequestHeader('X-API-Key','Your_API_key');

resp := TChilkatHttpResponse.Create(Self);
success := http.HttpJson('POST','https://checkout-test.adyen.com/v41/payments/result',json.ControlInterface,'application/json',resp.ControlInterface);
if (success = 0) then
  begin
    Memo1.Lines.Add(http.LastErrorText);
    Exit;
  end;

sbResponseBody := TChilkatStringBuilder.Create(Self);
resp.GetBodySb(sbResponseBody.ControlInterface);

jResp := TChilkatJsonObject.Create(Self);
jResp.LoadSb(sbResponseBody.ControlInterface);
jResp.EmitCompact := 0;

respStatusCode := resp.StatusCode;
Memo1.Lines.Add('Status Code = ' + IntToStr(respStatusCode));
Memo1.Lines.Add('Response Body:');
Memo1.Lines.Add(jResp.Emit());

if (respStatusCode >= 400) then
  begin
    Memo1.Lines.Add('Response Header:');
    Memo1.Lines.Add(resp.Header);
    Memo1.Lines.Add('Failed.');
    Exit;
  end;

//  Sample JSON response:

//  {
//    "pspReference": "851559480052382F",
//    "resultCode": "Authorised",
//    "merchantReference": "123",
//    "paymentMethod": "ideal",
//    "shopperLocale": "nl_NL"
//  }

//  Sample code for parsing the JSON response...
//  Use the following online tool to generate parsing code from sample JSON:
//  Generate Parsing Code from JSON

pspReference := jResp.StringOf('pspReference');
resultCode := jResp.StringOf('resultCode');
merchantReference := jResp.StringOf('merchantReference');
paymentMethod := jResp.StringOf('paymentMethod');
shopperLocale := jResp.StringOf('shopperLocale');