---
title: "Add external payment"
method: POST
path: "/api/connector/v1/payments/addExternal"
tags: ["Payments"]
---

# Add external payment

`POST /api/connector/v1/payments/addExternal`

Adds a new external payment to a bill of the specified customer. An external payment represents a payment that is tracked outside of the system. Note this operation supports [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property/).

**Prerequisites:** The external payment type must be enabled by the property in order to accept such payments in their Mews environment. Use [Get configuration](https://mews-systems.gitbook.io/connector-api/operations/configuration#get-configuration) to check which external payment types are supported.

## Request body

- ExternalPaymentParameters
  - `ClientToken` string, required — Token identifying the client application.
  - `AccessToken` string, required — Access token of the client application.
  - `Client` string, required — Name and version of the client application.
  - `EnterpriseId` string, uuid, nullable — Unique identifier of the enterprise. Required when using [Portfolio Access Tokens](https://mews-systems.gitbook.io/connector-api/concepts/multi-property), ignored otherwise.
  - `AccountId` string, uuid, required — Unique identifier of the [Customer](https://mews-systems.gitbook.io/connector-api/operations/customers/#customer) or [Company](https://mews-systems.gitbook.io/connector-api/operations/companies/#company). Company billing may not be enabled for your integration.
  - `CustomerId` string, uuid, nullable — Unique identifier of the [Customer](https://mews-systems.gitbook.io/connector-api/operations/customers/#customer). **Deprecated!**
  - `BillId` string, uuid, nullable — Unique identifier of an open bill of the customer where to assign the payment.
  - `AccountingCategoryId` string, uuid, nullable — Unique identifier of an [Accounting category](https://mews-systems.gitbook.io/connector-api/operations/accountingcategories/#accounting-category) to be assigned to the external payment.
  - `ReservationId` string, uuid, nullable — Unique identifier of the reservation the payment belongs to.
  - `Amount` ExtendedAmountParameters, required
    - `Currency` string, currency, required — ISO-4217 code of the `Currency`.
    - `TaxCodes` string[], nullable — The tax values applied.
    - `NetValue` number, double, nullable — Net value in case the item is taxed.
    - `GrossValue` number, double, nullable — Gross value including all taxes.
  - `Type` 'Unspecified' | 'BadDebts' | 'Bacs' | 'WireTransfer' | 'Invoice' | 'ExchangeRateDifference' | 'Complimentary' | 'Reseller' | 'ExchangeRoundingDifference' | 'Barter' | 'Commission' | 'BankCharges' | 'CrossSettlement' | 'Cash' | 'CreditCard' | 'Prepayment' | 'Cheque' | 'Bancontact' | 'IDeal' | 'PayPal' | 'GiftCard' | 'LoyaltyPoints' | 'ChequeVacances' | 'OnlinePayment' | 'CardCheck' | 'PaymentHubRedirection' | 'Voucher' | 'MasterCard' | 'Visa' | 'Amex' | 'Discover' | 'DinersClub' | 'Jcb' | 'UnionPay' | 'Twint' | 'Reka' | 'LoyaltyCard' | 'PosDiningAndSpaReward' | 'DirectDebit' | 'DepositCheck' | 'DepositCash' | 'DepositCreditCard' | 'DepositWireTransfer' — Unspecified (Unspecified (unavailable in French Legal Environment)) BadDebts (Bad debts) Bacs (Bacs payment) WireTransfer (Wire transfer) Invoice (Invoice) ExchangeRateDifference (Exchange rate difference) Complimentary (Complimentary) Reseller (Reseller) ExchangeRoundingDifference (Exchange rounding difference) Barter (Barter) Commission (Commission) BankCharges (Bank charges) CrossSettlement (Cross settlement) Cash (Cash) CreditCard (Credit card – deprecated, only for existing partners) Prepayment (Prepayment) Cheque (Cheque) Bancontact (Bancontact) IDeal (iDeal – deprecated, only for existing partners) PayPal (PayPal – deprecated, only for existing partners) GiftCard (Gift card) LoyaltyPoints (Loyalty points) ChequeVacances (Chèque-Vacances) OnlinePayment (Online payment – deprecated, only for existing partners) CardCheck (Card check) PaymentHubRedirection (Payment hub redirection) Voucher (Voucher) MasterCard (MasterCard – deprecated, only for existing partners) Visa (Visa – deprecated, only for existing partners) Amex (American Express – deprecated, only for existing partners) Discover (Discover – deprecated, only for existing partners) DinersClub (Diners Club – deprecated, only for existing partners) Jcb (JCB – deprecated, only for existing partners) UnionPay (UnionPay – deprecated, only for existing partners) Twint (TWINT) Reka (Reka) LoyaltyCard (Loyalty card) PosDiningAndSpaReward (POS Dining & Spa Reward) DirectDebit (Direct debit) DepositCheck (Deposit - check) DepositCash (Deposit - cash) DepositCreditCard (Deposit - credit card – deprecated, only for existing partners) DepositWireTransfer (Deposit - wire transfer)
  - `ExternalIdentifier` string, nullable — Identifier of the payment from external system.
  - `Notes` string, nullable — Additional payment notes.

## Response `200`

OK

- AddExternalPaymentResult
  - `ExternalPaymentId` string, uuid — Unique identifier of the [Payment item](https://mews-systems.gitbook.io/connector-api/operations/accountingitems/#payment-item).

## Other responses

- `204` — Server has successfully fulfilled the request and there is no additional information to send back.
- `400` — Error caused by the client app, e.g. in case of malformed request or invalid identifier of a resource. In most cases, such an error signifies a bug in the client app (consumer of the API).
- `401` — Error caused by usage of invalid ClientToken, AccessToken, or you may not have the necessary permission to use the endpoint.
- `403` — Server error that should be reported to the end user of the client app. Happens for example when the server-side validation fails or when a business-logic check is violated.
- `408` — Error caused by heavy request that takes too long to process (typically tens of seconds). To get around this, request data in smaller batches. For more information, see [Request timeouts](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-timeouts)
- `429` — Error caused by too many requests sent in a given amount of time. Response contains `Retry-After` header indicating how long the user agent should wait before making a follow-up request. For more information, see [Request limits](https://mews-systems.gitbook.io/connector-api/guidelines/requests#request-limits).
- `500` — Unexpected error on the Mews side. This may be due to a software fault. If such a situation occurs, the error will be logged and the development team notified, however you can raise an issue through GitHub on our [documentation repository](https://github.com/MewsSystems/gitbook-connector-api).

---

[API](https://skmtc.net/mews/apis/connector-api.md) · [All operations](https://skmtc.net/mews/apis/connector-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/mews/connector-api/revisions/81933a8ff730/schema)
