---
title: "Edit Card Holder Details"
method: POST
path: "/pws/v2/pws_card_holder_edit/"
tags: ["Card V2"]
---

# Edit Card Holder Details

`POST /pws/v2/pws_card_holder_edit/`

This API provides the ability to edit cardholder details and delivery details for a card by passing the client id and token detailsVersion 2 of this api support idempotency

## Request body

- UpdateCardDetailsModel — -- This web service allow users to edit cardholder/delivery details for a card. -- Pass the card token in the web service.
  - `api_call_unique_identifier` string, required — Unique number that must be passed at each API request. Identifier to make each API request unique
  - `client_id` integer, required — Unique identifier for the client which Paymentology will provide at outset
  - `token` integer, required — Public token.
  - `user_id` string — User Id of the Customer who triggered the API request.
  - `remarks` string — Remarks for API request
  - `ch_title` string — card Holder Title.
  - `ch_fname` string — card Holder First Name.
  - `ch_sname` string — card Holder SurName.
  - `ch_addr1` string — card Holder Address 1
  - `ch_addr2` string — card Holder Address 2.
  - `ch_pcode` string — card Holder Postal Code.
  - `ch_city` string — card Holder City.
  - `ch_country` string — card Holder Country.
  - `ch_email` string, email — card Holder Email.
  - `ch_mobile` string — card Holder Mobile Number. phone number format i.e 00 (country code ) phone number or + (country code) phone number.
  - `ch_del_method` integer — <p>delivery method for card :</p> <ul> <li class="docBullet">0 &ndash; Standard mail</li> <li class="docBullet">1 &ndash; Registered mail</li> <li class="docBullet">2 &ndash; Direct delivery (courier) RFU</li> </ul>
  - `del_fname` string — delivery First Name.
  - `del_sname` string — delivery Last Name.
  - `del_addr1` string — delivery Address 1.
  - `del_addr2` string — delivery Address2.
  - `del_pcode` string — delivery postal code.
  - `del_city` string — delivery City.
  - `del_country` string — delivery Country.
  - `del_code` string — Delivery Code, carriers with same del_code, will be grouped to be send to a specified delivery address.
  - `bulk_delv_add_code` string — <p>Bulk delivery address code.<br />It can be any value set by bank themselves.&nbsp;</p> <p>Bank can use any value to group the cards that will be delivered to a specific address. This value is the bulk_delv_add_code.<br />So if a card has bulk_delv_add_code = 10505, then this code is used to identify the delivery address inside &lt;BULK_DEL&gt; tag in perso file xml.</p><p>&nbsp;</p><p>Example :&nbsp;<br />If a client creates a batch of 5 cards and need to deliver to a single address.<br />Then bank can agree a value for <em><strong>bulk_delv_add_code</strong></em> other than 0 and put same delivery address for all cards. This will deliver cards to single address in bulk inside &lt;BULK_DEL&gt; tag in perso file xml.</p><p>&nbsp;</p><p>Note: If client need to send 5 cards to <em><strong>AddressX</strong></em> and 6 cards to <em><strong>AddressY</strong></em>, then client need to set different <em><strong>bulk_delv_add_code</strong></em> for two batch of cards.<br />Like for 5 cards set bulk_delv_add_code = X and for 6 cards set bulk_delv_add_code = Y. This will distinguish separate bulk delivery address for different sets of cards.</p><p><br />If client sets <em><strong>bulk_delv_add_code</strong></em> same for 5 cards but different delivery address for each card, then all cards will be delivered to delivery address of first created card.</p><p><br />If a client creates a card and need to deliver to a specific single address.<br />Then client can input either card holder address/details or purchaser address/ details based on <em><strong>pur_cust_type</strong></em> field. At this point client can put <em><strong>bulk_delv_add_code</strong></em> = 0 or empty/null so that it determines the card is for single delivery and address/details are populated inside &lt;RECORD&gt;==&gt;&lt;CH_ADDR&gt; tag in perso file xml</p><p><em><strong>pur_cust_type</strong></em></p><ul><li>0 =&gt; Card will be delivered to card holder address</li><li>1 =&gt; Card will be delivered to purchaser address</li> </ul>
  - `del_email` string, email — delivery Email.
  - `del_mobile` string — delivery Mobile Number. hone number format i.e 00 (country code ) phone number or + (country code) phone number.
  - `emboss_name` string — Emboss name : name that appears on front of card.
  - `product_ref` string — product Reference.
  - `custom_1` string — Customer special details, i.e. QR code If custom_1 ==> 1, then we will provide : MMYY+Public Token (MMYY ->the date of card creation ). If custom_1 value other than "1" , PT will include what ever client input in the same field in create.
  - `envelope_ref` integer — Identifies envelope type.
  - `carrier_type` string — Allows client to stipulate carrier type (card packaging type choice - for shipment to customer) possible.
  - `pur_title` string — Purchaser Title
  - `pur_fname` string — Purchaser First Name.
  - `pur_sname` string — Purchaser Last Name.
  - `pur_addr1` string — Purchaser address 1
  - `pur_addr2` string — Purchaser address 2
  - `pur_pcode` string — Purchaser postal code
  - `pur_city` string — Purchaser City
  - `pur_country` string — Purchaser Country
  - `pur_email` string, email — Purchaser email
  - `pur_mobile` string — Purchaser Mobile
  - `pur_pass_code` string — Purchaser pass code
  - `pur_cust_type` integer — <p>Purchaser customer type. This will determine the single delivery of a card to specific address</p> <ul> <li>0 =&gt; Card will be delivered to card holder address</li> <li>1 =&gt; Card will be delivered to purchaser address</li> </ul>
  - `atm_lang` string — Language to be used in ATM <ul><li class="docBullet">01 ==> Chinese</li><li class="docBullet">02 ==> English</li><li class="docBullet">03 ==> Portugese</li><li class="docBullet">04 ==> Spanish</li></ul>
  - `perso_fields` string — <p>Show or hide cvv in perso file. 1 means show and 0 means hide</p> <table > <tbody> <tr> <th ><strong>Position</strong></th> <th ><strong>Field</strong></th> </tr> <tr> <td >1</td> <td >RFU</td> </tr> <tr> <td >2</td> <td >cvv</td> </tr> <tr> <td >3</td> <td>RFU</td> </tr> <tr> <td >4</td> <td>RFU</td> </tr> <tr> <td >5</td> <td>RFU</td> </tr> </tbody> </table> <p>EG : 01000 (Determine to show or hide CVV in perso (xml) file).</p>
  - `3ds_lang` string — ISO 639-1 two-letter language code.
  - `3ds_challenge_methods` Challenge3DS[]
    - `ids` string[] — list of challenge methods
  - `3ds_challenge_profile` string — Unique identifier for the challenge profile. 3ds_challenge_methods will be ignored if this value is not null.
  - `ch_dob` string — card Holder Date of Birth, accepted format yyyy-mm-dd.

## Response `200`

Successful Response

- UpdateCardDetailsResponseModel
  - `header` UpdateCardDetailsResponseHeader
    - `error_id` integer — error id
    - `error_desc` string — error message
  - `body` UpdateCardDetailsResponseBody
    - `message` string — message

## Other responses

- `404` — Webservices does not exist
- `500` — Internal Server error

---

[API](https://skmtc.net/paymentology/apis/payapi-docs.md) · [All operations](https://skmtc.net/paymentology/apis/payapi-docs/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/paymentology/payapi-docs/versions/a675891b0365/schema)
