PHP code example of sveaekonomi / checkout
1. Go to this page and download the library: Download sveaekonomi/checkout library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
sveaekonomi / checkout example snippets
// include the library
include 'vendor/autoload.php';
// include library without composer, include.php is in the library root
ckout\Transport\Connector::TEST_BASE_URL;
$connector = \Svea\Checkout\Transport\Connector::init($checkoutMerchantId, $checkoutSecret, $baseUrl);
// include the library
include 'vendor/autoload.php';
// without composer
,
"locale" => "sv-SE",
"clientOrderNumber" => rand(10000,30000000),
"merchantData" => "Test string from merchant",
"cart" => array(
"items" => array(
array(
"articleNumber" => "1234567",
"name" => "Yellow rubber duck",
"quantity" => 200,
"unitPrice" => 12300,
"discountPercent" => 1000,
"vatPercent" => 2500,
"unit" => "st",
"temporaryReference" => "1",
"merchantData" => "Size: S"
),
array(
"articleNumber" => "987654321",
"name" => "Blue rubber duck",
"quantity" => 500,
"unitPrice" => 25000,
"discountPercent" => 1000,
"vatPercent" => 2500,
"unit" => "pcs",
"temporaryReference" => "2",
"merchantData" => null
)
)
),
"presetValues" => array(
array(
"typeName" => "emailAddress",
"value" => "[email protected] ",
"isReadonly" => false
),
array(
"typeName" => "postalCode",
"value" => "99999",
"isReadonly" => false
)
),
"merchantSettings" => array(
"termsUri" => "http://yourshop.se/terms/",
"checkoutUri" => "http://yourshop.se/checkout/",
"confirmationUri" => "http://yourshop.se/checkout/confirm/",
"pushUri" => "https://yourshop.se/push.php?checkout_order_id={checkout.order.uri}",
)
);
$checkoutClient = new \Svea\Checkout\CheckoutClient($connector);
$response = $checkoutClient->create($data);
// include the library
include 'vendor/autoload.php';
// without composer
Svea\Checkout\CheckoutClient($connector);
$response = $checkoutClient->get($data);
// include the library
include 'vendor/autoload.php';
// without composer
ata = array(
"orderId" => 251147,
"merchantData" => "test",
"cart" => array(
"items" => array(
array(
"articleNumber" => "123456",
"name" => "Yellow rubber duck",
"quantity" => 200,
"unitPrice" => 66600,
"discountPercent" => 1000,
"vatPercent" => 2500,
"temporaryReference" => "230",
"merchantData" => "Size: M"
),
array(
"articleNumber" => "658475",
"name" => "Shipping Fee Updated",
"quantity" => 100,
"unitPrice" => 4900,
"vatPercent" => 2500,
"temporaryReference" => "231",
"merchantData" => null
)
)
)
);
$response = $checkoutClient->update($data);
// include the library
include 'vendor/autoload.php';
// without composer
ata = array(
"token" => "12345678-90ab-cdef-1234-567890abcdef",
"currency" => "SEK",
"clientOrderNumber" => 12356,
"merchantSettings" => array(
"checkoutUri" => "http://yourshop.se/checkout/",
"pushUri" => "https://yourshop.se/push.php?checkout_order_id={checkout.order.uri}",
),
"cart" => array(
"items" => array(
array(
"articleNumber" => "123456",
"name" => "Yellow rubber duck",
"quantity" => 200,
"unitPrice" => 66600,
"discountPercent" => 1000,
"vatPercent" => 2500,
"temporaryReference" => "230",
"merchantData" => "Size: M"
),
)
)
);
$response = $checkoutClient->create($data);
// include the library
include 'vendor/autoload.php';
// without composer
-1234-567890abcdef'
);
$checkoutClient = new \Svea\Checkout\CheckoutClient($connector);
$response = $checkoutClient->get($data);
Array
(
[MerchantSettings] => Array
(
[CheckoutValidationCallBackUri] =>
[PushUri] => https://yourdomain.se/push.php?svea_order_id={checkout.order.uri}
[TermsUri] => http://yourdomain.se/terms
[CheckoutUri] => http://yourdomain.se/checkout/
[ConfirmationUri] => http://yourdomain.se/checkout/confirm
[ActivePartPaymentCampaigns] => Array
(
)
[PromotedPartPaymentCampaign] => 0
)
[Cart] => Array
(
[Items] => Array
(
[0] => Array
(
[ArticleNumber] => 1234567
[Name] => Yellow rubber duck
[Quantity] => 200
[UnitPrice] => 66600
[DiscountPercent] => 1000
[VatPercent] => 2500
[Unit] =>
[TemporaryReference] =>
[RowNumber] => 1
[MerchantData] => Size: M
)
[1] => Array
(
[ArticleNumber] => 987654321
[Name] => Blue rubber duck
[Quantity] => 500
[UnitPrice] => 25000
[DiscountPercent] => 1000
[VatPercent] => 2500
[Unit] => pcs
[TemporaryReference] =>
[RowNumber] => 2
[MerchantData] =>
)
[2] => Array
(
[ArticleNumber] => 6eaceaec-fffc-41ad-8095-c21de609bcfd
[Name] => InvoiceFee
[Quantity] => 100
[UnitPrice] => 2900
[DiscountPercent] => 0
[VatPercent] => 2500
[Unit] => st
[TemporaryReference] =>
[RowNumber] => 3
[MerchantData] =>
)
)
)
[Customer] => Array
(
[Id] => 626
[NationalId] => 194605092222
[CountryCode] => SE
[IsCompany] =>
)
[ShippingAddress] => Array
(
[FullName] => Persson, Tess T
[FirstName] => Tess T
[LastName] => Persson
[StreetAddress] => Testgatan 1
[CoAddress] => c/o Eriksson, Erik
[PostalCode] => 99999
[City] => Stan
[CountryCode] => SE
[IsGeneric] =>
[AddressLines] => Array
(
)
)
[BillingAddress] => Array
(
[FullName] => Persson, Tess T
[FirstName] => Tess T
[LastName] => Persson
[StreetAddress] => Testgatan 1
[CoAddress] => c/o Eriksson, Erik
[PostalCode] => 99999
[City] => Stan
[CountryCode] => SE
[IsGeneric] =>
[AddressLines] => Array
(
)
)
[Gui] => Array
(
[Layout] => desktop
[Snippet] => <iframe src=\"\"></iframe>
)
[Locale] => sv-SE
[Currency] => SEK
[CountryCode] => SE
[PresetValues] =>
[ClientOrderNumber] => 8828014
[OrderId] => 251147
[EmailAddress] => [email protected]
[PhoneNumber] => 12312313
[PaymentType] => INVOICE
[Status] => Final
[CustomerReference] =>
[SveaWillBuyOrder] => 1
[IdentityFlags] =>
[MerchantData] => test
[Recurring] => 1
[RecurringToken] => 12345678-90ab-cdef-1234-567890abcdef (Only available when the order is FINAL)
)
echo $response['Gui']['Snippet']
$checkoutMerchantId = 100002;
$checkoutSecret = "3862e010913d7c44f104ddb4b2881f810b50d5385244571c3327802e241140cc692522c04aa21c942793c8a69a8e55ca7b6131d9ac2a2ae2f4f7c52634fe30d2";
$baseUrl = \Svea\Checkout\Transport\Connector::TEST_BASE_URL;
$conn = \Svea\Checkout\Transport\Connector::init($checkoutMerchantId, $checkoutSecret, $baseUrl);
$checkoutClient = new \Svea\Checkout\CheckoutClient($conn);
$data = array(
'IsCompany' => false
);
$response = $checkoutClient->getAvailablePartPaymentCampaigns($data);
echo "<pre>" . print_r($response, true) . "</pre>";
Array
(
[0] => Array
(
[CampaignCode] => 213060
[ContractLengthInMonths] => 3
[Description] => Köp nu betala om 3 månader (räntefritt)
[FromAmount] => 1000
[InitialFee] => 100
[InterestRatePercent] => 0
[MonthlyAnnuityFactor] => 1
[NotificationFee] => 29
[NumberOfInterestFreeMonths] => 3
[NumberOfPaymentFreeMonths] => 3
[PaymentPlanType] => 2
[ToAmount] => 50000
)
[1] => Array
(
[CampaignCode] => 410012
[ContractLengthInMonths] => 12
[Description] => Dela upp betalningen på 12 månader
[FromAmount] => 100
[InitialFee] => 0
[InterestRatePercent] => 19.9
[MonthlyAnnuityFactor] => 0.092586652785396
[NotificationFee] => 29
[NumberOfInterestFreeMonths] => 0
[NumberOfPaymentFreeMonths] => 0
[PaymentPlanType] => 0
[ToAmount] => 30000
)
)
(InitialFee + (ceil(ProductPrice * MonthlyAnnuityFactor) + NotificationFee) * ContractLengthInMonths) / ContractLengthInMonths
InitialFee + (ProductPrice * MonthlyAnnuityFactor + NotificationFee) * ContractLengthInMonths