---
title: Full Payment & Installment - Registration API Credit Card
slug: nicepay-api-non-snap-full-payment-and-installment-registration-api-credit-card
description: Informasi tentang API Non-SNAP Payment - Registration - Full Payment & Installment - API Credit Card yang terdapat pada sistem NICEPAY
image: https://archbee-image-uploads.s3.amazonaws.com/ZHvSjR5ZrsoxwKbJa3xmo/g0_aNGrKfFihycfrt61VL_rdrx9d8diaz-pgm07xfz2-test-1-1.png
icon: {"faIcon":"fa-solid fa-book"}
docTags: 
createdAt: 2023-02-15T06:24:35.000Z
---

# Tentang Full Payment & Installment - Registration API Credit Card

***

Pembayaran tipe *Full Payment & Installment&#x20;*&#x61;dalah pilihan tipe pembayaran menggunakan Kartu Kredit yang melakukan pembayaran suatu tagihan secara penuh atau secara cicilan (3, 6, atau 12 bulan).&#x20;



# Full Payment & Installment - Registration API Credit Card

***

**Registrasi API&#x20;**&#x64;alam metode pembayaran Kartu Kredit merupakan langkah awal dalam melakukan integrasi [Payment API](docId\:OK8pnFvDrqo-4Qq3umLQz) dengan NICEPAY.



| **API Endpoint**   | `/nicepay/direct/v2/registration`                            |
| ------------------ | ------------------------------------------------------------ |
| **Request Method** | <font color="#3b9f0f">**POST**</font>****                    |
| **Description**    | Performs Transaction Regist to NICEPAY&#xD;                  |
| **Merchant Token** | SHA256(`timeStamp`+`iMid`+`referenceNo`+`amt`+`merchantKey`) |
| **Request Format** | `application/json`                                           |



## Request Parameter for Full Payment & Installment - Registration API Credit Card

***

Berikut adalah daftar parameter yang diperlukan untuk melakukan *request* Registrasi pada metode pembayaran API Kartu Kredit.

| **Parameter**                                                                       | **Tipe**           | **Ukuran** | **Deskripsi**                                                                                                                                 | **Contoh / Catatan**                                                  |
| ----------------------------------------------------------------------------------- | ------------------ | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------- |
| `timeStamp`<br /><font color="#2166ae">Required</font>                              | N                  | 14         | Request Timestamp (`YYYYMMDDHH24MISS`)                                                                                                        | 20221202141217                                                        |
| `iMid`<br /><font color="#2166ae">Required</font>                                   | AN                 | 10         | Merchant ID	<br />                                                                                                                            | IONPAYTEST                                                            |
| `payMethod`<br /><font color="#2166ae">Required</font>                              | N                  | 2          | [Payment Method Code](docId\:g7inRV70XcSA9lP7bpmok) <br />                                                                                    | 01&#xD;                                                               |
| `currency`<br /><font color="#2166ae">Required</font>                               | A                  | 3          | Currency<br />                                                                                                                                | IDR                                                                   |
| `amt` <br /><font color="#2166ae">Required</font>                                   | N                  | 12         | Amount<br />(number not in float format)                                                                                                      | 10000 (Jumlah total amount goods dari cartData)                       |
| `referenceNo`<br /><font color="#2166ae">Required</font>                            | ANS                | 40         | Merchant Reference Number	<br />                                                                                                              | ordNo20221202141217                                                   |
| `goodsNm `<font color="#2166ae"> </font><br /><font color="#2166ae">Required</font> | AN                 | 100        | Goods Name	<br />                                                                                                                             | Testing Transaction&#xD;                                              |
| `billingNm `<br /><font color="#2166ae">Required</font>                             | A                  | 100        | Buyer Name	<br />                                                                                                                             | John Doe&#xD;                                                         |
| `billingPhone `<br /><font color="#2166ae">Required</font>                          | N                  | 15         | Buyer Phone Number<br />                                                                                                                      | 2112345678                                                            |
| `billingEmail `<br /><font color="#2166ae">Required</font>                          | ANS                | 40         | Buyer E-mail	<br />                                                                                                                           | buyer\@merchant.com                                                   |
| `billingAddr `<br /><font color="#2166ae">Required</font>                           | AN                 | 100        | Buyer Address	<br />                                                                                                                          | Jln. Raya Kasablanka Kav.88&#xD;                                      |
| `billingCity `<br /><font color="#2166ae">Required</font>                           | A                  | 50         | Buyer City	<br />                                                                                                                             | South Jakarta&#xD;                                                    |
| `billingState `<br /><font color="#2166ae">Required</font>                          | A                  | 50         | Billing State	<br />                                                                                                                          | DKI Jakarta&#xD;                                                      |
| `billingPostCd `<br /><font color="#2166ae">Required</font>                         | N                  | 10         | Billing Post Number	<br />                                                                                                                    | 14350                                                                 |
| `billingCountry `<br /><font color="#2166ae">Required</font>                        | A                  | 10         | Billing Country	<br />                                                                                                                        | Indonesia                                                             |
| `cartData`<br /><font color="#2166ae">Optional</font>                               | `JSONstring`<br /> | 4000       | Cart Data<br />                                                                                                                               | \{}                                                                   |
| `instmntType`<br /><font color="#2166ae">Required</font>                            | N                  | 2          | [Installment Type Code](docId:7CIX-U_4z295XgtNVEsbO)                                                                                          | 1                                                                     |
| `instmntMon`<br /><font color="#2166ae">Required</font>                             | N                  | 2          | Installment Month<br />`1`: 1 Month/Full Payment, *jika* `instmntType`*:* *null/1*<br />`3`: 3 Months<br />`6`: 6 Months<br />`12`: 12 Months | 1                                                                     |
| `recurrOpt`<br /><font color="#2166ae">Required</font>                              | N                  | 2          | `0`: Automatic Cancel&#xD;<br />`1`: Do not cancel&#xD;<br />`2`: Do not make token                                                           | 2                                                                     |
| `dbProcessUrl`<br /><font color="#2166ae">Required</font>                           | ANS                | 255        | Notification URL	<br />                                                                                                                       | https\://merchant.com/dbProcessUrl&#xD;<br />                         |
| `userIP`<br /><font color="#2166ae">Required for CC, E-Wallet, Payloan, QRIS</font> | AN                 | 15         | User IP                                                                                                                                       | 127.0.0.1                                                             |
| `merchantToken`<br /><font color="#2166ae">Required</font>                          | AN                 | 255        | Merchant Token	<br />                                                                                                                         | c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae&#xD; |
| `description`                                                                       | AN                 | 100        | Transaction Description	                                                                                                                      | Test Transaction&#xD;                                                 |
| `userSessionID`                                                                     | AN                 | 100        | User Session ID	                                                                                                                              | userSessionID                                                         |
| `userAgent`                                                                         | ANS                | 100        | User Agent	                                                                                                                                   | Mozilla                                                               |
| `userLanguage`                                                                      | A                  | 2          | User Language	                                                                                                                                | en-US&#xD;                                                            |

:::hint{type="warning"}
**Catatan untuk Credit Card Full Payment & Credit Card Installment**

- Untuk jenis pembayaran **Credit Card - Full Payment**, pada parameter `instmntType` bisa diisi dengan *1 atau kosong (*Null)** dan pada parameter `instmntMon` bisa diisi dengan *1 atau kosong (*Null*)*.
- Untuk jenis pembayaran **Credit Card - Installment**, pada parameter `instmntType` bisa diisi dengan *2* dan pada parameter `instmntMon` bisa diisi dengan *3 (3 bulan), 6 (6 bulan) atau 12 (12 bulan)*.
:::



### Cart Data for Full Payment & Installment - Registration API Credit Card

`cartData` pada *request&#x20;*&#x70;arameter di Registrasi Kartu Kredit berguna untuk meliputi barang atau *item* apa saja yang akan dibayarkan oleh Pelanggan Anda berserta rincian dan harga per *item.* 

| **Parameter** | **Deskripsi**                                                                                                 | **Contoh** |
| ------------- | ------------------------------------------------------------------------------------------------------------- | ---------- |
| `Count`       | Total jumlah dari keseluruhan cart data                                                                       | 2          |
| `Item`        | Terbagi menjadi 5 macam parameter, yaitu `img_url`, `goods_id`, `goods_name`, `goods_detail`, dan `goods_amt` | -          |

***

Penjelasan detil pada parameter **Item.**

| **Parameter**  | **Deskripsi**                          | **Contoh**                                    |
| -------------- | -------------------------------------- | --------------------------------------------- |
| `img_url`      | URL Gambar Barang (Ukuran 50px x 50px) | htttps\://www\.merchant.com/image\_goods1.jpg |
| `goods_id`     | ID Barang                              | NICEPRDID1                                    |
| `goods_name`   | Nama Barang                            | Nama Item-1                                   |
| `goods_detail` | Deskripsi Detail Barang                | Detail Item-1                                 |
| `goods_amt`    | Harga Barang                           | 1000                                          |

### Sample JSON Cart Data

:::CodeblockTabs
cartData Credit Card Registration

```json
{
    "count": "2",  
    "item": [  
        {
            "img_url": "http://www.merchant.com/image_goods1.jpg",
            "goods_id": "NICEPRDID1",
            "goods_name": "Item 1 Name",
            "goods_detail": "Item 1 Detail",
            "goods_amt": "1000"
        },  
        {
            "img_url": "http://www.merchant.com/image_goods2.jpg",
            "goods_id": "NICEPRDID1",
            "goods_name": "Item 2 Name",
            "goods_detail": "Item 2 Detail",
            "goods_amt": "1000"
        }  
        ] 
} 
```
:::



## Response Parameter for Full Payment & Installment - Registration API Credit Card

***

Berikut adalah *response* parameter dari hasil *request* parameter pada API Registrasi Kartu Kredit.

| **Parameter**  | **Tipe** | **Ukuran** | **Deskripsi**                                               | **Contoh / Catatan**             |
| -------------- | -------- | ---------- | ----------------------------------------------------------- | -------------------------------- |
| `resultCd`     | N        | 4          | [Result Code](docId\:gvAdBBr0SQ92N1zHplSFM)                 | 0000                             |
| `resultMsg`   | AN       | 255        | Result Message: [Error Code](docId\:yEh1VA9k2y6sL1kQF2aWD)  | SUCCESS                          |
| `tXid`         | AN       | 30         | Transaction ID&#xD;                                         | IONPAYTEST01202212151029182023   |
| `referenceNo`  | ANS      | 40         | Merchant Reference Number&#xD;                              | ordNo20221215101254              |
| `payMethod`    | N        | 2          | [Payment Method Code](docId\:g7inRV70XcSA9lP7bpmok)         | 01                               |
| `amt`          | N        | 12         | Payment Amount                                              | 10000                            |
| `transDt`      | N        | 8          | Transaction Date (`YYYYMMDD`)&#xD;                          | 20221212                         |
| `transTm`      | N        | 6          | Transaction Time (`HH24MISS`)&#xD;                          | 121212                           |
| `description`  | AN       | 100        | Transaction Description&#xD;                                | Testing Transaction Credit Card  |
| `bankCd`       | A        | 4          | [Bank Code](docId:1U7QOax_wrzXMoCG-Mqad)                    | null                             |
| `vacctNo`      | N        | 20         | Virtual Account                                             | null                             |
| `mitraCd`      | A        | 4          | [Mitra Code](docId\:DwzaQDD7DXZMECz80A6o8)                  | null                             |
| `payNo`        | N        | 12         | CVS Payment Number                                          | null                             |
| `currency`    | A        | 3          | Currency                                                    | IDR                              |
| `goodsNm`      | AN       | 100        | Goods Name&#xD;                                             | Goods For Testing Transaction    |
| `billingNm`    | A        | 100&#xD;   | Buyer Name                                                  | John Doe                         |
| `vacctValidDt` | N        | 8          | VA Expiry Date (`YYYYMMDD`)                                 | null                             |
| `vacctValidTm` | N        | 6          | VA Expiry Time (`HH24MISS`)                                 | null                             |
| `payValidDt`  | N        | 8          | Expiry Date (`YYYYMMDD`)&#xD;                               | null                             |
| `payValidTm`   | N        | 6          | Expiry Time (`HH24MISS`)&#xD;                               | null                             |
| `requestURL`   | ANS      | 360        | Request URL&#xD;                                            | null                             |
| `paymentExpDt` | N        | 6          | QR Payment Expiry Date (`YYYYMMDD`)&#xD;                    | null                             |
| `paymentExpTm` | N        | 6          | QR Payment Expiry Time (`HH24MISS`)&#xD;                    | null                             |
| `qrContent`    | ANS      | 360        | QR String in Plain Text&#xD;                                | null                             |
| `qrUrl`        | ANS      | 360        | URL for QR Image, Valid for 5 minutes&#xD;                  | null                             |

:::hint{type="info"}
Silakan memeriksa [NICEPAY Code](docId\:kYd45uYYIjwzVs3dt8_rk) untuk mengetahui kode umum beserta kode *response* dalam metode pembayaran Kartu Kredit ataupun metode pembayaran lainnya di NICEPAY.
:::



## Sample Parameter for Full Payment & Installment - Registration API Credit Card

***

### Request Parameter

:::CodeblockTabs
cURL

```curl
curl --location 'https://dev.nicepay.co.id/nicepay/direct/v2/registration' \
--header 'Content-Type: application/json' \
--data-raw '{
    "timeStamp": "20221202141217",
    "iMid": "IONPAYTEST",
    "payMethod": "01",
    "currency": "IDR",
    "amt": "5000",
    "merchantToken": "c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae",
    "referenceNo": "ordNo20221202141217",
    "description": "Testing Registration Credit Card",
    "goodsNm" : "Testing Transaction",
    "billingNm" : "John Doe",
    "billingPhone" : "081288998899",
    "billingEmail" : "john.doe@example.com",
    "billingAddr" : "Jln. Raya Kasablanka Kav.88",
    "billingCity" : "South Jakarta",
    "billingState" : "DKI Jakarta",
    "billingCountry" : "Indonesia",
    "billingPostCd" : "12800",
    "dbProcessUrl": "http://ptsv2.com/t/merchant/post",
    "cartData" : "{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}",
    "userIP":"127.0.0.1",
    "instmntType":"1",
	"instmntMon":"1",
    "recurrOpt":"",
    "userLanguage": "en",
    "userAgent":"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0"
}'
```

Node.js

```nodejs
const nicepayClient = require("nodejs-nicepay");

let secondVersion = new nicepayClient.SecondApiVersion({
  isProduction: false,
  isCloudServer: false,
  merchantKey: "YOUR_MERCHANT_KEY",
});

const parameter = {
  payMethod: "01",
  currency: "IDR",
  amt: "5000",
  referenceNo: "ordNo20221202141217",
  goodsNm: "Testing Transaction",
  billingNm: "John Doe",
  billingPhone: "081288998899",
  billingEmail: "john.doe@example.com",
  billingAddr: "Jln. Raya Kasablanka Kav.88",
  billingCity: "South Jakarta",
  billingState: "DKI Jakarta",
  billingPostCd: "12800",
  billingCountry: "Indonesia",
  description: "Testing Registration Credit Card",
  dbProcessUrl: "http://ptsv2.com/t/merchant/post",
  userIP: "127.0.0.1",
  cartData: "{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}",
  sellers: "",
  bankCd: "",
  userAgent:
    "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
  mitraCd: "",
  instmntMon: "1",
  instmntType: "1",
  shopId: "",
};

let endPoint = "/direct/v2/registration";
secondVersion.requestAPI(parameter, endPoint);

```

```java
String reffNo = "ordNo20221202141217";

        
Card requestData = Card.builder()
        .timeStamp("20221202141217")
        .iMid("IONPAYTEST")
        .payMethod("01")
        .currency("IDR")
        .amt("5000")
        .referenceNo(reffNo)
        .goodsNm("Testing Transaction")
        .billingNm("John Doe")
        .billingPhone("081288998899")
        .billingEmail("john.doe@example.com")
        .billingAddr("Jln. Raya Kasablanka Kav.88")
        .billingCity("South Jakarta")
        .billingState("DKI Jakarta")
        .billingPostCd("12800")
        .billingCountry("Indonesia")
        .dbProcessUrl("http://ptsv2.com/t/merchant/post")
        .userIP("127.0.0.1")
        .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0")
        .userLanguage("en")
        .instmntType("1")
        .instmntMon("1")
        .recurrOpt("")
        .cartData("{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}")
        .merchantToken("20221202141217", "IONPAYTEST", reffNo, "5000", merchantKey)
        .build();

NICEPayResponseV2 cardRegistResponse = V2CardService.callV2CardRegistration(requestData, config);

```

```python
$useProd = false;
$useCloud = false;
$registration_endpoint = "/nicepay/direct/v2/registration";

$url = HttpUtil::getNicepayDomain($useProd, $useCloud) . $registration_endpoint;

$timestamp = "20221202141217";
$reference_no = "ordNo20221202141217";
$amt = "5000";
$merchant_token = "c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae";

$body = [
    "timeStamp" => $timestamp,
    "iMid" => "IONPAYTEST",
    "payMethod" => "01",
    "currency" => "IDR",
    "amt" => $amt,
    "merchantToken" => $merchant_token,
    "referenceNo" => $reference_no,
    "description" => "Testing Registration Credit Card",
    "goodsNm" => "Testing Transaction",
    "billingNm" => "John Doe",
    "billingPhone" => "081288998899",
    "billingEmail" => "john.doe@example.com",
    "billingAddr" => "Jln. Raya Kasablanka Kav.88",
    "billingCity" => "South Jakarta",
    "billingState" => "DKI Jakarta",
    "billingCountry" => "Indonesia",
    "billingPostCd" => "12800",
    "dbProcessUrl" => "http://ptsv2.com/t/merchant/post",
    "cartData" => "{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}",
    "userIP" => "127.0.0.1",
    "instmntType" => "1",
    "instmntMon" => "1",
    "recurrOpt" => "",
    "userLanguage" => "en",
    "userAgent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0"
];

$response = HttpUtil::postJsonRequest($url, $body);

```

C#

```csharp
string merchantKey = config.MerKey;
string clientId = config.ClientId;
string timestamp = DateTimeOffset.Now.ToString("yyyyMMddHHmmss");
string refNo = $"ordNo{timestamp}";
string amount = "5000";
bool isProduction = false;
bool isCloudServer = false;

var cartItem = new Dictionary<string, object>
{
    { "goods_id", "NICEPRDID1"},
    { "img_url", "http://www.merchant.com/image_goods1.jpg" },
    { "goods_name", "Testing Transaction" },
    { "goods_detail", "Testing Transaction Details" },
    { "goods_amt", "5000" }
};

var cartDataBuilder = new BuilderCartData()
    .SetCount("1")
    .SetItem(cartItem);

var cartData = cartDataBuilder.Build();

// Generate merchant token
var merchantTokenBuilder = new MerchantTokenBuilder()
    .SetTimeStamp(timestamp)
    .SetIMid(clientId)
    .SetRefNo(refNo)
    .SetAmount(amount)
    .SetMerchantKey(merchantKey);

string merchantToken = merchantTokenBuilder.BuildMerchantToken();

// Build Credit Card Request Body
var bodyBuilder = new NicepayRequestBuilder()
    .SetCommonFields(
        iMid: clientId,
        timeStamp: timestamp,
        payMethod: "01",        // Credit Card
        currency: "IDR",
        amt: amount,
        referenceNo: refNo,
        goodsNm: "Testing Transaction",
        merchantToken: merchantToken
    )
    .setCreditCard(
        instmntType: "1",
        instmntMon: "1",
        recurrOpt: ""
    )
    .SetBillingInfo(
        billingNm: "John Doe",
        billingPhone: "081288998899",
        billingEmail: "john.doe@example.com",
        billingAddr: "Jln. Raya Kasablanka Kav.88",
        billingCity: "South Jakarta",
        billingState: "DKI Jakarta",
        billingPostCd: "12800",
        billingCountry: "Indonesia"
    )
    .SetDbProcessUrl("http://ptsv2.com/t/merchant/post")
    .SetCartData(cartData)
    .SetUserIP("127.0.0.1")
    .SetUserLanguage("en")
    .SetUserAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0");

ApiEndpoints apiEndpoints = new ApiEndpoints();

// Build payload and send
Dictionary<string, object> payload = bodyBuilder.Build();
string jsonPayload = Newtonsoft.Json.JsonConvert.SerializeObject(payload, Newtonsoft.Json.Formatting.Indented);

var registrationService = new NicepayRegistrationService(apiEndpoints, isProduction, isCloudServer);
var result = await registrationService.SendPostAsync(apiEndpoints.RegistV2, payload);

```

Vanilla JS

```javascript
const registrationData = {
  timeStamp: "20221202141217",
  payMethod: "01",
  currency: "IDR",
  amt: "5000",
  referenceNo: "ordNo20221202141217",
  goodsNm: "Testing Transaction",
  billingNm: "John Doe",
  billingPhone: "081288998899",
  billingEmail: "john.doe@example.com",
  billingAddr: "Jln. Raya Kasablanka Kav.88",
  billingCity: "South Jakarta",
  billingState: "DKI Jakarta",
  billingPostCd: "12800",
  billingCountry: "Indonesia",
  description: "Testing Registration Credit Card",
  deliveryNm: "",
  deliveryPhone: "",
  deliveryAddr: "",
  deliveryCity: "",
  deliveryState: "",
  deliveryPostCd: "",
  deliveryCountry: "",
  dbProcessUrl: "http://ptsv2.com/t/merchant/post",
  merchantToken:
    "c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae",
  userIP: "127.0.0.1",
  cartData: "{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}",
  userAgent:
    "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0",
  instmntMon: "1",
  instmntType: "1",
};


const response = await Nicepay.registerTransaction(registrationData);

```

Laravel

```php
$useProd = false;
$useCloud = false;
$registration_endpoint = "/nicepay/direct/v2/registration";

$url = HttpUtil::getNicepayDomain($useProd, $useCloud) . $registration_endpoint;

$timestamp = "20221202141217";
$reference_no = "ordNo20221202141217";
$amt = "5000";
$merchant_token = "c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae";

$body = [
    "timeStamp" => $timestamp,
    "iMid" => "IONPAYTEST",
    "payMethod" => "01",
    "currency" => "IDR",
    "amt" => $amt,
    "merchantToken" => $merchant_token,
    "referenceNo" => $reference_no,
    "description" => "Testing Registration Credit Card",
    "goodsNm" => "Testing Transaction",
    "billingNm" => "John Doe",
    "billingPhone" => "081288998899",
    "billingEmail" => "john.doe@example.com",
    "billingAddr" => "Jln. Raya Kasablanka Kav.88",
    "billingCity" => "South Jakarta",
    "billingState" => "DKI Jakarta",
    "billingCountry" => "Indonesia",
    "billingPostCd" => "12800",
    "dbProcessUrl" => "http://ptsv2.com/t/merchant/post",
    "cartData" => "{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}",
    "userIP" => "127.0.0.1",
    "instmntType" => "1",
    "instmntMon" => "1",
    "recurrOpt" => "",
    "userLanguage" => "en",
    "userAgent" => "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0"
];

$response = HttpUtil::postJsonRequest($url, $body);

```

PHP Native

```php
$config = NICEPay::builder()
            ->setIsProduction(false)
            ->build();

$timestamp = "20221202141217";       
$reffNo = "ordNo20221202141217";       
$amount = "5000";

$parameter = Card::builder()
            ->timeStamp($timestamp)
            ->iMid("IONPAYTEST")
            ->payMethod("01")
            ->currency("IDR")
            ->amt($amount)
            ->referenceNo($reffNo)
            ->merchantToken($timestamp, "IONPAYTEST", $reffNo, $amount, $this->merchantKey)
            ->description("Testing Registration Credit Card")
            ->goodsNm("Testing Transaction")
            ->billingNm("John Doe")
            ->billingPhone("081288998899")
            ->billingEmail("john.doe@example.com")
            ->billingAddr("Jln. Raya Kasablanka Kav.88")
            ->billingCity("South Jakarta")
            ->billingState("DKI Jakarta")
            ->billingCountry("Indonesia")
            ->billingPostCd("12800")
            ->dbProcessUrl("http://ptsv2.com/t/merchant/post")
            ->cartData("{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}")
            ->userIP("127.0.0.1")
            ->instmntType("1")
            ->instmntMon("1")
            ->recurrOpt("")
            ->userLanguage("en")
            ->userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0")
            ->build();        

$cardService = new V2CardService($config);

```

```kotlin
var config: NICEPay? = NICEPay.Builder()
            .isProduction(false)
            .clientSecret(TestingConstants.CLIENT_SECRET)
            .partnerId(TestingConstants.PARTNER_ID)
            .externalID(TestingConstants.EXTERNAL_ID)
            .timestamp(TestingConstants.TIMESTAMP)
            .privateKey(TestingConstants.PRIVATE_KEY)
            .build()
            
val request: DirectV2Card = DirectV2Card.Builder()
    .timeStamp("20221202141217")
    .iMid("IONPAYTEST")
    .payMethod("01")
    .currency("IDR")
    .amt("5000")
    .merchantToken("c91e6531f6c84869439bc5ebe5389bd71e7752c054fc9dbfe193d087a1b797ae")
    .referenceNo("ordNo20221202141217")
    .description("Testing Registration Credit Card")
    .goodsNm("Testing Transaction")
    .billingNm("John Doe")
    .billingPhone("081288998899")
    .billingEmail("john.doe@example.com")
    .billingAddr("Jln. Raya Kasablanka Kav.88")
    .billingCity("South Jakarta")
    .billingState("DKI Jakarta")
    .billingCountry("Indonesia")
    .billingPostCd("12800")
    .dbProcessUrl("http://ptsv2.com/t/merchant/post")
    .userIP("127.0.0.1")
    .instmntType("1")
    .instmntMon("1")
    .recurrOpt("")
    .cartData("{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}")
    .userLanguage("en")
    .userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0")
    .build()
val response : NICEPayResponseV2 = v2CardService.registration(request, config)!!
```

CodeIgniter

```php
$timestamp = "20221213101276";
$configBuilder = NICEPay::builder();
$config = $configBuilder
    ->setIsProduction(false)
    ->setIsCloudServer(true)
    ->build();

$reffNo = "ordNo20221213101276";
$amount = "5000";

$CardBuilder = Card::builder();
$parameter = $CardBuilder
    ->setTimeStamp($timestamp)
    ->setIMid("RECURRTEST")
    ->setPayMethod("01")
    ->setCurrency("IDR")
    ->setAmt($amount)
    ->setReferenceNo($reffNo)
    ->setMerchantToken($timestamp, "RECURRTEST", $reffNo, $amount, $this->merchantKey) // ✅ unchanged logic
    ->setGoodsNm("Goods For Testing")
    ->setBillingNm("John Doe")
    ->setBillingPhone("081288998899")
    ->setBillingEmail("john.doe@example.com")
    ->setBillingAddr("Jln. Raya Kasablanka Kav.88")
    ->setBillingCity("South Jakarta")
    ->setBillingState("DKI Jakarta")
    ->setBillingCountry("Indonesia")
    ->setBillingPostCd("12800")
    ->setCartData("{\"count\":\"1\",\"item\":[{\"goods_id\":\"NICEPRDID1\",\"img_url\":\"http://www.merchant.com/image_goods1.jpg\",\"goods_name\":\"Testing Transaction\",\"goods_detail\":\"Testing Transaction Details\",\"goods_amt\":\"5000\"}]}")
    ->setDbProcessUrl("http://ptsv2.com/t/merchant/post")
    ->setUserIP("127.0.0.1")
    ->setInstmntType("1")
    ->setInstmntMon("1")
    ->setRecurrOpt("")
    ->setUserLanguage("en")
    ->setUserAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:47.0) Gecko/20100101 Firefox/47.0")
    ->build();

$cardService = new V2CardService($config);
$response = $cardService->registration($parameter);

```
:::

### Response Parameter

:::CodeblockTabs
Sample Response

```json
{
    "resultCd": "0000",
    "resultMsg": "SUCCESS",
    "tXid": "IONPAYTEST01202510080949037182",
    "referenceNo": "ordNo20221202141217",
    "payMethod": "01",
    "amt": "5000",
    "transDt": "20251008",
    "transTm": "094903",
    "description": "Testing Registration Credit Card",
    "bankCd": null,
    "vacctNo": null,
    "mitraCd": null,
    "payNo": null,
    "currency": null,
    "goodsNm": null,
    "billingNm": null,
    "vacctValidDt": null,
    "vacctValidTm": null,
    "payValidDt": null,
    "payValidTm": null,
    "requestURL": null,
    "paymentExpDt": null,
    "paymentExpTm": null,
    "qrContent": null,
    "qrUrl": null
}
```
:::

Setelah Anda menyelesaikan integrasi API ini, silakan melanjutkan ke proses [Payment - API Credit Card](docId\:FcJslW1q-2oJhb0HWqJsj).
