Sample code for 30+ languages & platforms
Objective-C

Adyen Create Payment Session

See more Adyen Examples

Creates an Adyen payment session.

Chilkat Objective-C Downloads

Objective-C
#import <CkoHttp.h>
#import <CkoJsonObject.h>
#import <CkoHttpResponse.h>
#import <CkoStringBuilder.h>
#import <NSString.h>

BOOL success = NO;

CkoHttp *http = [[CkoHttp alloc] init];

// 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, and is constructed by the code that follows.

// {
//   "merchantAccount": "YourMerchantAccount",
//   "sdkVersion": "1.9.7",
//   "channel": "Web",
//   "amount": {
//     "currency": "EUR",
//     "value": 17408
//   },
//   "reference": "Your order number",
//   "countryCode": "NL",
//   "shopperLocale": "nl_NL",
//   "origin": "https://www.yourshop.com",
//   "returnUrl": "https://www.yourshop.com/checkout/completed"
// }
CkoJsonObject *json = [[CkoJsonObject alloc] init];
[json UpdateString: @"merchantAccount" value: @"YourMerchantAccount"];
[json UpdateString: @"sdkVersion" value: @"1.9.7"];
[json UpdateString: @"channel" value: @"Web"];
[json UpdateString: @"amount.currency" value: @"EUR"];
[json UpdateInt: @"amount.value" value: [NSNumber numberWithInt: 17408]];
[json UpdateString: @"reference" value: @"Your order number"];
[json UpdateString: @"countryCode" value: @"NL"];
[json UpdateString: @"shopperLocale" value: @"nl_NL"];
[json UpdateString: @"origin" value: @"https://www.yourshop.com"];
[json UpdateString: @"returnUrl" value: @"https://www.yourshop.com/checkout/completed"];

[http SetRequestHeader: @"X-API-Key" value: @"YourAPIkey"];

CkoHttpResponse *resp = [[CkoHttpResponse alloc] init];
success = [http HttpJson: @"POST" url: @"https://checkout-test.adyen.com/v41/paymentSession" json: json contentType: @"application/json" response: resp];
if (success == NO) {
    NSLog(@"%@",http.LastErrorText);
    return;
}

CkoStringBuilder *sbResponseBody = [[CkoStringBuilder alloc] init];
[resp GetBodySb: sbResponseBody];

CkoJsonObject *jResp = [[CkoJsonObject alloc] init];
[jResp LoadSb: sbResponseBody];
jResp.EmitCompact = NO;

int respStatusCode = [resp.StatusCode intValue];
NSLog(@"%@%d",@"Status Code = ",respStatusCode);
NSLog(@"%@",@"Response Body:");
NSLog(@"%@",[jResp Emit]);

if (respStatusCode >= 400) {
    NSLog(@"%@",@"Response Header:");
    NSLog(@"%@",resp.Header);
    NSLog(@"%@",@"Failed.");
    return;
}

// Sample JSON response:

// {
//   "paymentSession": "eyJjaGVja291 ... iMS45LjcifQ=="
// }

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

NSString *paymentSession = 0;

paymentSession = [jResp StringOf: @"paymentSession"];