# Update payment details

Update details about existing payment.

Endpoint: PATCH /payments/{id}
Version: 2.6.0
Security: bearer, basic, apiKey

## Security:

  - `bearer` (unknown)
    http bearer JWT

  - `basic` (unknown)
    http basic

  - `apiKey` (unknown)
    apiKey in header X-API-Key

## Path parameters:

  - `id` (string, required)
    PayId assigned by Computop Paygate in the initial request.

## Header parameters:

  - `Idempotency-Key` (string)
    A unique key provided by you to ensure that a particular operation is not processed multiple times in case of retries.

## Request fields (application/json):

  - `transId` (string)
    Transaction ID provided by you which should be unique for each payment.

  - `amount` (object)
    Amount object of the payment plan.

  - `amount.value` (integer)
    Total order amount in the smallest currency unit, including taxes, shipping costs, discounts, etc.

  - `amount.currency` (string)
    3-character ISO currency code.

  - `refNr` (string)
    Your unique reference number for the specific operation. You can pass this value to reconcile different operations in a payment (authorization, capture, refund, etc) individually.

  - `order` (object)

  - `order.merchantReference` (string)
    A unique identifier for the order, assigned by your system.

  - `order.invoiceId` (string)
    ID of the invoice generated for the order.

  - `order.numberOfArticles` (integer)
    The total number of articles (items) included in the order.

  - `order.description` (string)
    A short, description of the order (e.g. main product or order summary). In order to trigger a test payment that you want to run in simulation you can pass the simulation string. For example: "test:0000" to simulate a successful transaction.

  - `order.creationDate` (any)
    The date and time when the order was created.

  - `order.items` (array)

  - `order.items.id` (string)
    A unique identifier for the specific item in the order.

  - `order.items.sku` (string)
    The Stock Keeping Unit (SKU) of the item, used to uniquely identify the product within the merchant's inventory.

  - `order.items.name` (string)
    The name or title of the item being purchased.

  - `order.items.type` (string)
    The type of item, such as "physical", "digital", "discount", "sales_tax", "shipping_fee", "discount", "gift_card", "store_credit", etc.

  - `order.items.quantity` (integer)
    The quantity of this item being purchased in the order.

  - `order.items.quantityUnit` (string)
    The unit of measurement for the quantity, such as "pcs", "kg", or "liters".

  - `order.items.taxRate` (integer)
    The tax rate applied to this item. Percentage sign must be replaced with two zeros. For example: A tax rate of 25% should be sent as 2500.

  - `order.items.netPrice` (integer)
    The net price of a single unit of this item, excluding tax and discounts.

  - `order.items.grossPrice` (integer)
    The gross price of a single unit of this item, including taxes but excluding discounts.

  - `order.items.discountAmount` (integer)
    Discount amount applied to single unit of this item.

  - `order.items.taxAmount` (integer)
    Tax amount applied to single unit of this item.

  - `order.items.merchantData` (string)
    Additional data or metadata provided by the merchant about this item.

  - `order.items.description` (string)
    Detailed description of the item.

  - `order.items.marketplaceSellerId` (string)
    An identifier for the seller in a marketplace context.

  - `order.items.lineNumber` (integer)
    A sequential line number assigned to this item in the order for reference purposes.

  - `order.items.merchantProductType` (string)
    A classification or type assigned to this product by you.

  - `order.items.googleProductCategory` (string)
    Indicates the category of the item based on the Google product taxonomy.

  - `order.items.googleProductCategoryId` (integer)
    Google product category ID.

  - `order.items.groupId` (string)
    An identifier used to group related items together.

  - `order.items.taxCategory` (string)
    Specifies the tax category applicable to this item.

  - `order.items.additionalDescription` (string)
    Any additional descriptive information about this item not covered elsewhere.

  - `order.items.productInfo` (object)

  - `order.items.productInfo.brand` (string)
    The brand name associated with this product.

  - `order.items.productInfo.categories` (array)
    The product's category path as used in the your webshop

  - `order.items.productInfo.globalTradeItemNumber` (string)
    The product's Global Trade Item Number (GTIN).
    Enum: "EAN", "ISBN", "UPC"

  - `order.items.productInfo.manufacturerPartNumber` (string)
    The product's Manufacturer Part Number (MPN), which - together with the brand - uniquely identifies a product. Only submit MPNs assigned by a manufacturer and use the most specific MPN possible.

  - `order.items.productInfo.imageUrl` (string)
    A URL pointing to an image of this product.

  - `order.items.productInfo.productUrl` (string)
    A URL linking to a detailed product page on the merchant's website.

  - `order.items.imageUrl` (string)

  - `order.items.productUrl` (string)

  - `billingAddress` (object)

  - `billingAddress.streetName` (string)
    Street name of billing address.

  - `billingAddress.streetNumber` (string)
    Street number of billing address.

  - `billingAddress.addressLine2` (string)
    Address line 2 of billing address.

  - `billingAddress.addressLine3` (string)
    Address line 3 of billing address.

  - `billingAddress.city` (string)
    City of billing address.

  - `billingAddress.state` (string)
    State of billing address.

  - `billingAddress.country` (string)
    3 character ISO country code of billing address.

  - `billingAddress.postalCode` (string)
    Postal code of billing address.

  - `billingAddress.business` (string)
    Enum: "Company", "Person"

  - `shipping` (object)

  - `shipping.address` (object)

  - `shipping.address.firstName` (string)
    Shipping first name.

  - `shipping.address.lastName` (string)
    Shipping last name.

  - `shipping.address.companyName` (string)
    Shipping company name. Applicable, when the entity where the goods are being delivered is a business entity.

  - `shipping.address.phone` (object)
    Phone number of the customer.

  - `shipping.address.phone.countryCode` (string)
    Country Code/Area code of the phone number. Allows up to 3 digits. Must not contain the '+' prefix.

  - `shipping.address.phone.number` (string)
    Phone number of the customer.

  - `shipping.address.salutation` (string)

  - `shipping.address.streetName` (string)
    Shipping street.

  - `shipping.address.streetNumber` (string)
    Shipping street number.

  - `shipping.address.addressLine2` (string)
    Address line 2 of shipping address.

  - `shipping.address.addressLine3` (string)
    Address line 3 of shipping address.

  - `shipping.address.city` (string)
    Shipping city.

  - `shipping.address.state` (string)
    State of shipping address.

  - `shipping.address.country` (string)
    3 character ISO country code of shipping address.

  - `shipping.address.postalCode` (string)
    Shipping postal code.

  - `shipping.address.business` (string)
    Enum: "Company", "Person"

  - `shipping.type` (string)
    Shipping method.

  - `customerInfo` (object)
    Information about the customer.

  - `customerInfo.title` (string)
    Any additional title or designation associated with the customer, such as "Dr", etc.

  - `customerInfo.firstName` (string)
    First name of the customer.

  - `customerInfo.lastName` (string)
    Last name (surname) of the customer.

  - `customerInfo.companyName` (string)
    Name of the company if the customer is a business entity.

  - `customerInfo.email` (string)
    Email address of the customer.

  - `eventToken` (string)
    Intent of the updating the payment details.Note: Not all event tokens are applicable for all payment method types. Refer payment method specific pages in our product guide to know the relevant event tokens for a specific payment method.
    Enum: "UPDATE_ORDER_DETAILS", "UPDATE_ADDRESS", "UPDATE_REFERENCE", "RESEND_INVOICE", "DELETE_PERSONAL_DATA"

  - `paymentMethods` (object)

  - `paymentMethods.klarna` (object)

  - `paymentMethods.klarna.invoiceNumber` (string)
    Invoice/booking number from Klarna. This number is needed for example for resending the E-Mail with payment and order information.

  - `paymentMethods.amazonPay` (object)

  - `paymentMethods.amazonPay.merchantCountryCode` (string)
    Country code of merchant.
    Enum: "EU", "US", "JP"

## Request examples:

  - `AmazonPay` (unknown)

  - `Default` (unknown)

  - `Klarna` (unknown)

## Response 200:

  - `200` (unknown)
    Successful operation

## Response 200 fields (application/json):

  - `payId` (string)
    A unique identifier assigned by Computop Paygate to the payment. This ID remains constant throughout the lifecycle of the payment and is used to track and reference the payment across all subsequent operations, such as authorization, capture, refund, or cancellation.

  - `merchantId` (string)
    Merchant ID assigned by Computop Paygate.

  - `transId` (string)
    Transaction ID provided by you in the request.

  - `xId` (string)
    A unique identifier assigned by Computop Paygate for each operation in the payment. For example: xId will be different for the authorization and capture operations of a payment whereas payId will be same.

  - `refNr` (string)
    Reference number provided by you in the request.

  - `status` (string)
    Status of the transaction.

  - `responseCode` (string)
    Response code of the transaction.

  - `responseDescription` (string)
    Response description associated with the response code.

  - `metadata` (object)

  - `paymentMethods` (object)

  - `paymentMethods.type` (string)
    Enum: "ALIPAY", "AMAZONPAY", "APPLEPAY", "BANCOMATPAY", "BANCONTACT", "BIZUM", "BLIK", "BOLETO", "CARD", "DIRECTDEBIT", "EASYCOLLECT", "EPS", "FLOAPAY", "GOOGLEPAY", "IDEAL", "INSTANEA", "KLARNA", "LIMONETIK", "MBWAY", "MOBILEPAY", "MULTIBANCO", "MYBANK", "PAGBRASILPL", "PAYPAL", "PFCONNECT", "PRZELEWY24", "RATEPAY", "RIVERTY", "SATISPAY", "SWISH", "TRUSTLY", "TWINT", "UNIONPAY", "VIPPSMOBILEPAY", "WECHAT", "WERO"

  - `paymentMethods.payPal` (object)

  - `paymentMethods.payPal.providerResponseCode` (string)
    Error code from PayPal if agreed with Computop Paygate Helpdesk.

  - `paymentMethods.klarna` (object)

  - `paymentMethods.klarna.providerResponseCode` (string)
    Response code from Klarna.

  - `paymentMethods.klarna.providerResponseText` (string)
    Response description from Klarna.

## Response 400:

  - `400` (unknown)
    Bad request, [https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/400)

## Response 400 fields (application/json):

  - `errors` (object)
    "Object": [
"Error 1",
"Error 2"
]
}`

  - `type` (string)
    A URI reference that identifies the problem type

  - `title` (string)
    A short, human-readable summary of the problem type

  - `status` (string)
    The HTTP status code

  - `detail` (string)

  - `instance` (string)

## Response 404:

  - `404` (unknown)
    Payment not found

## Response 404 fields (application/json):

  - `type` (string)

  - `title` (string)

  - `status` (string)

  - `detail` (string)

  - `instance` (string)

## Response 500:

  - `500` (unknown)
    Internal Server Error, [https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500](https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/500)

## Response 500 fields (application/json):

  - `type` (string)

  - `title` (string)

  - `status` (string)

  - `detail` (string)

  - `instance` (string)

## Response 200 examples:

  - `Default` (unknown)

  - `Klarna` (unknown)

  - `PayPal` (unknown)

