PHP code example of asokawotulo / cicil-php
1. Go to this page and download the library: Download asokawotulo/cicil-php 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/ */
asokawotulo / cicil-php example snippets
use Cicil\Cicil;
Cicil::setEnv(Cicil::PRODUCTION); // or Cicil::SANDBOX
Cicil::setApiKey('xxxxxxxx');
Cicil::setMerchantId('xxxxxxxx');
Cicil::setMerchantSecret('xxxxxxxx');
use Cicil\Cicil;
$purchaseOrderData = [
'transaction' => [
'total_amount' => 13119000,
'transaction_id' => 'ORD10111808',
'item_list' => [
[
'item_id' => 'SKU101112',
'type' => 'product',
'name' => 'Notebook CICIL C12',
'price' => 12999000,
'category' => 'laptop',
'url' => 'https://www.tokocicil.com/product/sku101112',
'quantity' => 1,
'seller_id' => 'tokocicil-official'
],
[
'item_id' => 'SKU131415',
'type' => 'product',
'name' => 'Sticker Aja',
'price' => 60000,
'category' => 'accessories',
'url' => 'https://www.tokocicil.com/product/sku131415',
'quantity' => 2
],
[
'item_id' => 'insurance',
'type' => 'fee',
'name' => 'Insurance Fee',
'price' => 5000,
'quantity' => 1
],
[
'item_id' => 'shipment_cost',
'type' => 'shipment_cost',
'name' => 'Shipping Fee',
'price' => 45000,
'quantity' => 1
],
[
'item_id' => 'CICIL1212',
'type' => 'discount',
'name' => 'Promo Harbolnas CICIL',
'price' => -50000,
'quantity' => 1
]
],
],
'buyer' => [
'fullname' => 'John Doe',
'email' => '[email protected] ',
'phone' => '085322984060',
'address' => 'Jl. Sd Inpres RT.003/RW.006 No.174A 13950 Cakung, Pulogebang',
'city' => 'Jakarta Timur',
'district' => 'JK',
'postal_code' => '11630',
'company' => 'Cicil',
'country' => 'ID'
],
'shipment' => [
'shipment_provider' => 'Flat rate',
'shipping_price' => 40000,
'shipping_tax' => 0,
'name' => 'John Doe',
'address' => 'Jl. Sd Inpres RT.003/RW.006 No.174A 13950 Cakung, Pulogebang',
'city' => 'Jakarta Timur',
'district' => 'Jakarta Timur',
'postal_code' => '11630',
'phone' => '085322984060',
'company' => 'Cicil',
'country' => 'ID'
],
'push_url' => 'https://api.tokocicil.com/update',
'redirect_url' => 'https://toko.cicil.dev',
];
$response = Cicil::createPurchaseOrder($purchaseOrderData);
echo $response['url'];
use Cicil\Cicil;
use Cicil\Enums\PurchaseOrderStatusEnum;
$notifcationData = [
'po_no' => 'PO191219-162490',
'po_status' => PurchaseOrderStatusEnum::SHIPPING,
'transaction_id' => 'ORD10111808',
'shipment_provider' => 'JNE',
'shipment_no' => '14045'
];
Cicil::createNotification($notificationData);
use Cicil\Cicil;
use Cicil\Enums\PurchaseOrderStatusEnum;
$notifcationData = [
'po_no' => 'PO191219-162490',
'po_status' => PurchaseOrderStatusEnum::DELIVERED,
'transaction_id' => 'ORD10111808'
];
Cicil::createNotification($notificationData);
use Cicil\Cicil;
use Cicil\Enums\PurchaseOrderStatusEnum;
$notifcationData = [
'po_no' => 'PO191219-162490',
'po_status' => PurchaseOrderStatusEnum::CANCEL,
'transaction_id' => 'ORD10111808',
'reason' => 'wrong product'
];
Cicil::createNotification($notificationData);
use Cicil\Cicil;
$simulationData = [
'price' => 5000000,
'dp' => 1000000, // 0 for minimum down payment amount
'tenure' => 12, // 0 for default tenure duration
];
Cicil::createInstallmentSimulation($simulationData);
use Cicil\Common\Utils as CicilUtils;
use Cicil\Cicil;
$request = [
'headers' => [
'authorization' => 'Basic xxxx',
'date' => 'Tue, 11 Jan 2022 19:42:43 GMT',
],
];
$apiKey = Cicil::getApiKey();
$merchantId = Cicil::getMerchantId();
$merchantSecret = Cicil::getMerchantSecret();
$date = $request['headers']['date'];
$requestToken = str_replace('Basic ', '', $request['headers']['authorization'])
$generatedToken = CicilUtils::generateAuthorizationToken(
$apiKey,
$merchantId,
$merchantSecret,
$date,
);
if ($generatedToken != $requestToken) {
throw new Error('Authorization token invalid');
}
bash
composer