# ING Lease Now This option is available when the ING Lease Now service is enabled. The basic request creating the payment must be accompanied by a `cart` object with an `items` array containing the following parameters: | Parameter | Type | Required parameter | Description | |-------------------|-----------------------------------------------|-|-| | `id` | string | `YES` | Product identifier | | `name` | string | `YES` | Name of the product | | `amount` | integer | `YES` | Unit value of the net product in the smallest unit of currency - **pennies**. The value `0` is also allowed. | | `tax` | integer | `YES` | Tax unit value| | `taxStake` | string | `YES` | Tax rate. **Available values**: `23`, `22`, `8`, `7`, `5`, `3`, `0`, `TAX_EXEMPT`, `TAX_NOT_LIABLE`, `TAX_REVERSE_CHARGE`, `TAX_EXCLUDING` | | `quantity` | integer | `YES` | Quantity. **Minimum value is 0** | | `url` | string | `YES` | The url for the product in question | | `categoryId` | string | `YES` | Category identifier | | `unit` | string | `NO` | unit | | `state` | integer | `NO` | Product state. **available values**: `NEW`, `USED` | | `discount.amount` | integer | `NO` | Value of discount | | `discount.tax` | integer | `NO` | Discount tax value | The minimum value for a single product in Leasing is PLN 1,000, while the value of the entire basket must be at least PLN 5,000. The amounts given are **net** amounts. ## Example data structure ```php $cart = [ 'items' => [ [ 'id' => 1, 'categoryId' => 'category123', 'name' => 'Product name', 'amount' => 1000, 'tax' => 230, 'taxStake' => 23, 'quantity' => 1, 'unit' => 'szt', 'url' => 'https://product.url', 'state' => 'NEW', 'discount' => [ 'amount' => 100, 'tax' => 23, ] ] ] ]; ``` The above parameters should be taken into account when calculating the signature in accordance with the section [Authorisation](#topic-authorisation). ## Preparing the cart object ### Using the PHP function The data collected from the above parameters should be encoded using the function: ``` base64_encode(gzencode(json_encode($cart), 5)); ``` where: `$cart` - previously prepared parameters ```php $cart = [ 'items' => [ [ 'id' => 1, 'categoryId' => 'category123', 'name' => 'Product name', 'amount' => 500000, 'tax' => 115000, 'taxStake' => 23, 'quantity' => 1, 'unit' => 'szt', 'url' => 'https://product.url', 'state' => 'NEW', 'discount' => [ 'amount' => 100, 'tax' => 23, ], ], ], ]; $cart = base64_encode(gzencode(json_encode($cart), 5)); $fields = [ 'serviceId' => '63f574ed-d90d-4abe-9cs1-39117584a7b7', 'merchantId' => '6yt3gjtm9p1odfgx8491', 'amount' => '615000', 'currency' => 'PLN', 'orderId' => '123', 'orderDescription' => '#Example transaction', 'customerFirstName' => 'Jan', 'customerLastName' => 'Kowalski', 'customerEmail' => 'jan.kowalski@example.com', 'customerPhone' => '515515515', 'urlSuccess' => 'https://your-shop.com/success', 'urlFailure' => 'https://your-shop.com/failure', 'urlReturn' => 'https://your-shop.com/return', 'cart' => $cart, ]; $serviceKey = 'eAyhFLuHgwl5hu-32GM8QVlCVMWRU0dGjH1c'; $hashMethod = 'sha256'; $signature = createSignature( $fields, $serviceKey, $hashMethod ) . ';' . $hashMethod; ``` Using the additional parameter `visibleMethod` with the value `lease` will display only Leasing on the gateway. This allows you to extract a given method as a separate item in the summary. ## Example form content ```html ```