import axios, { AxiosInstance, AxiosRequestConfig } from "axios"; //#region \0rolldown/runtime.js //#endregion //#region src/configuration.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ interface ConfigurationParameters { apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise); username?: string; password?: string; accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise); basePath?: string; serverIndex?: number; baseOptions?: any; formDataCtor?: new () => any; } declare class Configuration { /** * parameter for apiKey security * @param name security name * @memberof Configuration */ apiKey?: string | Promise | ((name: string) => string) | ((name: string) => Promise); /** * parameter for basic security * * @type {string} * @memberof Configuration */ username?: string; /** * parameter for basic security * * @type {string} * @memberof Configuration */ password?: string; /** * parameter for oauth2 security * @param name security name * @param scopes oauth2 scope * @memberof Configuration */ accessToken?: string | Promise | ((name?: string, scopes?: string[]) => string) | ((name?: string, scopes?: string[]) => Promise); /** * override base path * * @type {string} * @memberof Configuration */ basePath?: string; /** * override server index * * @type {number} * @memberof Configuration */ serverIndex?: number; /** * base options for axios calls * * @type {any} * @memberof Configuration */ baseOptions?: any; /** * The FormData constructor that will be used to create multipart form data * requests. You can inject this here so that execution environments that * do not support the FormData class can still run the generated client. * * @type {new () => FormData} */ formDataCtor?: new () => any; constructor(param?: ConfigurationParameters); /** * Check if the given MIME is a JSON MIME. * JSON MIME examples: * application/json * application/json; charset=UTF8 * APPLICATION/JSON * application/vnd.company+json * @param mime - MIME (Multipurpose Internet Mail Extensions) * @return True if the given MIME is JSON, false otherwise. */ isJsonMime(mime: string): boolean; } declare namespace axios_d_exports { export { AxiosPromise, axios as default }; } import * as import_axios from "axios"; /** * Type definition for Axios promises * * This type is used to ensure compatibility between the OpenAPI generated code * and the actual Axios implementation. It simplifies the Promise return type. */ type AxiosPromise = Promise; //#endregion //#region src/base.d.ts /** * * @export * @interface RequestArgs */ interface RequestArgs { url: string; options: axios_d_exports.RawAxiosRequestConfig; } /** * * @export * @class BaseAPI */ declare class BaseAPI { protected basePath: string; protected axios: axios_d_exports.AxiosInstance; protected configuration: Configuration | undefined; constructor(configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance); } //#endregion //#region src/model/activate-apple-pay-certificate-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface ActivateApplePayCertificateRequest */ interface ActivateApplePayCertificateRequest { /** * The signed certificate from Apple in base64 format. Download this from Apple Developer Portal after creating the certificate with your CSR. * @type {string} * @memberof ActivateApplePayCertificateRequest */ cert: string; } //#endregion //#region src/model/subscription-payment-methods.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * List of payment methods allowed for subscriptions. * @export * @interface SubscriptionPaymentMethods */ interface SubscriptionPaymentMethods extends Array {} //#endregion //#region src/model/activate-subscription-request.d.ts /** * * @export * @interface ActivateSubscriptionRequest */ interface ActivateSubscriptionRequest { /** * A payment token generated by monei.js [Components](https://docs.monei.com/monei-js/overview/) or a paymentToken [saved after a previous successful payment](https://docs.monei.com/guides/save-payment-method/). In case of the first one, you will also need to send the `sessionId` used to generate the token in the first place. * @type {string} * @memberof ActivateSubscriptionRequest */ paymentToken?: string; /** * A unique identifier within your system that adds security to the payment process. You need to pass the same session ID as the one used on the frontend to initialize MONEI Component (if you needed to). This is required if a payment token (not permanent) was already generated in the frontend. * @type {string} * @memberof ActivateSubscriptionRequest */ sessionId?: string; /** * The amount to be added to the subscription\'s initial payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof ActivateSubscriptionRequest */ addAmount?: number; /** * * @type {SubscriptionPaymentMethods} * @memberof ActivateSubscriptionRequest */ allowedPaymentMethods?: SubscriptionPaymentMethods; /** * A permanent identifier that refers to the initial payment of a sequence of payments. This value needs to be sent in the path for `RECURRING` payments. * @type {string} * @memberof ActivateSubscriptionRequest */ sequenceId?: string; /** * The URL the customer will be directed to after transaction completed (successful or failed - except if `failUrl` is provided). * @type {string} * @memberof ActivateSubscriptionRequest */ completeUrl?: string; /** * The URL the customer will be directed to after transaction has failed, instead of `completeUrl` (used in hosted payment page). This allows to provide two different URLs for successful and failed payments. * @type {string} * @memberof ActivateSubscriptionRequest */ failUrl?: string; /** * The URL the customer will be directed to if they decide to cancel payment and return to your website (used in hosted payment page). * @type {string} * @memberof ActivateSubscriptionRequest */ cancelUrl?: string; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof ActivateSubscriptionRequest */ metadata?: object; } //#endregion //#region src/model/address.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface Address */ interface Address { /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof Address */ country?: string; /** * City, district, suburb, town, or village. * @type {string} * @memberof Address */ city?: string; /** * Address line 1 (e.g., street, PO Box, or company name). * @type {string} * @memberof Address */ line1?: string; /** * Address line 2 (e.g., apartment, suite, unit, or building). * @type {string} * @memberof Address */ line2?: string; /** * ZIP or postal code. * @type {string} * @memberof Address */ zip?: string; /** * State, county, province, or region. * @type {string} * @memberof Address */ state?: string; } //#endregion //#region src/model/api-exception.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface ApiException */ interface ApiException$1 { /** * Error type identifier * @type {string} * @memberof ApiException */ status: string; /** * HTTP status code * @type {number} * @memberof ApiException */ statusCode: number; /** * Human-readable error message * @type {string} * @memberof ApiException */ message: string; /** * Unique identifier for the request * @type {string} * @memberof ApiException */ requestId: string; /** * Timestamp when the request was processed * @type {string} * @memberof ApiException */ requestTime: string; } //#endregion //#region src/model/apple-pay-certificate.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * An Apple Pay certificate for iOS app integration. * @export * @interface ApplePayCertificate */ interface ApplePayCertificate { /** * Unique identifier of the certificate. * @type {string} * @memberof ApplePayCertificate */ id: string; /** * The account ID this certificate belongs to. * @type {string} * @memberof ApplePayCertificate */ accountId: string; /** * The Certificate Signing Request in base64 format. Only present before activation. Use this to create a certificate in Apple Developer Portal. * @type {string} * @memberof ApplePayCertificate */ csr?: string; /** * The certificate body in base64 format. Only present after activation. * @type {string} * @memberof ApplePayCertificate */ cert?: string; /** * Whether the certificate is active for payment processing. * @type {boolean} * @memberof ApplePayCertificate */ active: boolean; /** * The certificate expiration date in ISO 8601 format. Only present after activation. * @type {string} * @memberof ApplePayCertificate */ expireAt?: string; /** * The certificate creation date in ISO 8601 format. * @type {string} * @memberof ApplePayCertificate */ createdAt: string; } //#endregion //#region src/model/apple-pay-certificates-remove200-response.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface ApplePayCertificatesRemove200Response */ interface ApplePayCertificatesRemove200Response { /** * * @type {boolean} * @memberof ApplePayCertificatesRemove200Response */ success?: boolean; } //#endregion //#region src/model/bad-request-error.d.ts /** * @type BadRequestError * @export */ type BadRequestError = ApiException$1; //#endregion //#region src/model/bizum-validate-phone200-response.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface BizumValidatePhone200Response */ interface BizumValidatePhone200Response { /** * * @type {boolean} * @memberof BizumValidatePhone200Response */ isValid: boolean; } //#endregion //#region src/model/payment-cancellation-reason.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The reason for canceling the Payment. * @export * @enum {string} */ declare const PaymentCancellationReason: { readonly DUPLICATED: "duplicated"; readonly FRAUDULENT: "fraudulent"; readonly REQUESTED_BY_CUSTOMER: "requested_by_customer"; readonly ORDER_CANCELED: "order_canceled"; }; type PaymentCancellationReason = (typeof PaymentCancellationReason)[keyof typeof PaymentCancellationReason]; //#endregion //#region src/model/cancel-payment-request.d.ts /** * * @export * @interface CancelPaymentRequest */ interface CancelPaymentRequest { /** * * @type {PaymentCancellationReason} * @memberof CancelPaymentRequest */ cancellationReason?: PaymentCancellationReason; } //#endregion //#region src/model/cancel-subscription-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface CancelSubscriptionRequest */ interface CancelSubscriptionRequest { /** * If true, the subscription will be canceled at the end of the current period. * @type {boolean} * @memberof CancelSubscriptionRequest */ cancelAtPeriodEnd?: boolean; } //#endregion //#region src/model/capture-payment-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface CapturePaymentRequest */ interface CapturePaymentRequest { /** * The amount to capture, which must be less than or equal to the original amount. Any additional amount will be automatically refunded. * @type {number} * @memberof CapturePaymentRequest */ amount?: number; } //#endregion //#region src/model/confirm-payment-request-payment-method-card.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Additional information about the card used for this payment. * @export * @interface ConfirmPaymentRequestPaymentMethodCard */ interface ConfirmPaymentRequestPaymentMethodCard { /** * The cardholder\'s name, as stated in the credit card. * @type {string} * @memberof ConfirmPaymentRequestPaymentMethodCard */ cardholderName?: string; /** * The cardholder\'s email address. * @type {string} * @memberof ConfirmPaymentRequestPaymentMethodCard */ cardholderEmail?: string; } //#endregion //#region src/model/confirm-payment-request-payment-method.d.ts /** * Additional information about the payment method used for this payment. * @export * @interface ConfirmPaymentRequestPaymentMethod */ interface ConfirmPaymentRequestPaymentMethod { /** * * @type {ConfirmPaymentRequestPaymentMethodCard} * @memberof ConfirmPaymentRequestPaymentMethod */ card?: ConfirmPaymentRequestPaymentMethodCard; } //#endregion //#region src/model/payment-billing-details.d.ts /** * Billing information associated with the payment method at the time of the transaction. * @export * @interface PaymentBillingDetails */ interface PaymentBillingDetails { /** * The customer\'s billing full name. * @type {string} * @memberof PaymentBillingDetails */ name?: string; /** * The customer\'s billing email address. * @type {string} * @memberof PaymentBillingDetails */ email?: string; /** * The customer\'s billing phone number in E.164 format. * @type {string} * @memberof PaymentBillingDetails */ phone?: string; /** * Billing company name. * @type {string} * @memberof PaymentBillingDetails */ company?: string; /** * Company tax ID. * @type {string} * @memberof PaymentBillingDetails */ taxId?: string; /** * * @type {Address} * @memberof PaymentBillingDetails */ address?: Address; } //#endregion //#region src/model/payment-customer.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentCustomer */ interface PaymentCustomer { /** * The customer\'s email address. * @type {string} * @memberof PaymentCustomer */ email?: string; /** * The customer\'s full name or business name. * @type {string} * @memberof PaymentCustomer */ name?: string; /** * The customer\'s phone number in E.164 format. * @type {string} * @memberof PaymentCustomer */ phone?: string; } //#endregion //#region src/model/payment-session-details.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Information related to the browsing session of the user who initiated the payment. * @export * @interface PaymentSessionDetails */ interface PaymentSessionDetails { /** * The IP address where the operation originated. * @type {string} * @memberof PaymentSessionDetails */ ip?: string; /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof PaymentSessionDetails */ countryCode?: string; /** * Two-letter language code ([ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1)). * @type {string} * @memberof PaymentSessionDetails */ lang?: string; /** * Device type, could be `desktop`, `mobile`, `smartTV`, `tablet`. * @type {string} * @memberof PaymentSessionDetails */ deviceType?: string; /** * Information about the device used for the browser session (e.g., `iPhone`). * @type {string} * @memberof PaymentSessionDetails */ deviceModel?: string; /** * The browser used in this browser session (e.g., `Mobile Safari`). * @type {string} * @memberof PaymentSessionDetails */ browser?: string; /** * The version for the browser session (e.g., `13.1.1`). * @type {string} * @memberof PaymentSessionDetails */ browserVersion?: string; /** * Operation system (e.g., `iOS`). * @type {string} * @memberof PaymentSessionDetails */ os?: string; /** * Operation system version (e.g., `13.5.1`). * @type {string} * @memberof PaymentSessionDetails */ osVersion?: string; /** * The source component from where the operation was generated (mostly for our SDK\'s). * @type {string} * @memberof PaymentSessionDetails */ source?: string; /** * The source component version from where the operation was generated (mostly for our SDK\'s). * @type {string} * @memberof PaymentSessionDetails */ sourceVersion?: string; /** * Full user agent string of the browser session. * @type {string} * @memberof PaymentSessionDetails */ userAgent?: string; /** * Browser accept header. * @type {string} * @memberof PaymentSessionDetails */ browserAccept?: string; /** * The color depth of the browser session (e.g., `24`). * @type {string} * @memberof PaymentSessionDetails */ browserColorDepth?: string; /** * The screen height of the browser session (e.g., `1152`). * @type {string} * @memberof PaymentSessionDetails */ browserScreenHeight?: string; /** * The screen width of the browser session (e.g., `2048`). * @type {string} * @memberof PaymentSessionDetails */ browserScreenWidth?: string; /** * The timezone offset of the browser session (e.g., `-120`). * @type {string} * @memberof PaymentSessionDetails */ browserTimezoneOffset?: string; } //#endregion //#region src/model/payment-shipping-details.d.ts /** * Shipping information associated with the payment. * @export * @interface PaymentShippingDetails */ interface PaymentShippingDetails { /** * The shipping customer\'s full name. * @type {string} * @memberof PaymentShippingDetails */ name?: string; /** * The shipping customer\'s email address. * @type {string} * @memberof PaymentShippingDetails */ email?: string; /** * The shipping customer\'s phone number in E.164 format. * @type {string} * @memberof PaymentShippingDetails */ phone?: string; /** * Name of the company where the shipment is going. * @type {string} * @memberof PaymentShippingDetails */ company?: string; /** * Company tax ID. * @type {string} * @memberof PaymentShippingDetails */ taxId?: string; /** * * @type {Address} * @memberof PaymentShippingDetails */ address?: Address; } //#endregion //#region src/model/confirm-payment-request.d.ts /** * * @export * @interface ConfirmPaymentRequest */ interface ConfirmPaymentRequest { /** * A payment token generated by monei.js [Components](https://docs.monei.com/monei-js/overview/) or a paymentToken [saved after a previous successful payment](https://docs.monei.com/guides/save-payment-method/). * @type {string} * @memberof ConfirmPaymentRequest */ paymentToken: string; /** * * @type {ConfirmPaymentRequestPaymentMethod} * @memberof ConfirmPaymentRequest */ paymentMethod?: ConfirmPaymentRequestPaymentMethod; /** * If set to true a permanent token that represents a payment method used in the payment will be generated. * @type {boolean} * @memberof ConfirmPaymentRequest */ generatePaymentToken?: boolean; /** * * @type {PaymentCustomer} * @memberof ConfirmPaymentRequest */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof ConfirmPaymentRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof ConfirmPaymentRequest */ shippingDetails?: PaymentShippingDetails; /** * * @type {PaymentSessionDetails} * @memberof ConfirmPaymentRequest */ sessionDetails?: PaymentSessionDetails; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof ConfirmPaymentRequest */ metadata?: object; } //#endregion //#region src/model/conflict-error.d.ts /** * @type ConflictError * @export */ type ConflictError = ApiException$1; //#endregion //#region src/model/create-customer-request.d.ts /** * * @export * @interface CreateCustomerRequest */ interface CreateCustomerRequest { /** * The customer\'s email address. * @type {string} * @memberof CreateCustomerRequest */ email?: string; /** * The customer\'s full name or business name. * @type {string} * @memberof CreateCustomerRequest */ name?: string; /** * The customer\'s phone number in E.164 format. * @type {string} * @memberof CreateCustomerRequest */ phone?: string; /** * * @type {PaymentBillingDetails} * @memberof CreateCustomerRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof CreateCustomerRequest */ shippingDetails?: PaymentShippingDetails; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof CreateCustomerRequest */ metadata?: object; } //#endregion //#region src/model/payment-payment-method-bizum-input.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details about the Bizum account used for this payment. If provided phone number is valid and registered in Bizum, MONEI will try to confirm the payment directly. * @export * @interface PaymentPaymentMethodBizumInput */ interface PaymentPaymentMethodBizumInput { /** * Phone number in E.164 format used to pay with `bizum`. * @type {string} * @memberof PaymentPaymentMethodBizumInput */ phoneNumber?: string; } //#endregion //#region src/model/payment-payment-method-card-input.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details about the card used as payment method. If provided, MONEI will try to confirm the payment directly. * @export * @interface PaymentPaymentMethodCardInput */ interface PaymentPaymentMethodCardInput { /** * The card number, as a string without any separators. * @type {string} * @memberof PaymentPaymentMethodCardInput */ number?: string; /** * Card security code. * @type {string} * @memberof PaymentPaymentMethodCardInput */ cvc?: string; /** * Two-digit number representing the card\'s expiration month. * @type {string} * @memberof PaymentPaymentMethodCardInput */ expMonth?: string; /** * Two-digit number representing the card\'s expiration year. * @type {string} * @memberof PaymentPaymentMethodCardInput */ expYear?: string; /** * The cardholder\'s name, as stated in the credit card. * @type {string} * @memberof PaymentPaymentMethodCardInput */ cardholderName?: string; /** * The cardholder\'s email address. * @type {string} * @memberof PaymentPaymentMethodCardInput */ cardholderEmail?: string; } //#endregion //#region src/model/payment-payment-method-input.d.ts /** * An information about a payment method used for this payment. We recommend using `paymentToken` instead, as it is more secure way to pass sensitive payment information. Processing credit card information on your server requires [PCI DSS compliance](https://www.investopedia.com/terms/p/pci-compliance.asp). * @export * @interface PaymentPaymentMethodInput */ interface PaymentPaymentMethodInput { /** * * @type {PaymentPaymentMethodCardInput} * @memberof PaymentPaymentMethodInput */ card?: PaymentPaymentMethodCardInput; /** * * @type {PaymentPaymentMethodBizumInput} * @memberof PaymentPaymentMethodInput */ bizum?: PaymentPaymentMethodBizumInput; } //#endregion //#region src/model/payment-payment-methods.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * An array of allowed payment methods (used in hosted payment page). Must be enabled payment methods. * @export * @interface PaymentPaymentMethods */ interface PaymentPaymentMethods extends Array {} //#endregion //#region src/model/payment-sequence-recurring.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Specific configurations for recurring payments. Will only be used when `sequence`.`type` is `recurring`. * @export * @interface PaymentSequenceRecurring */ interface PaymentSequenceRecurring { /** * Date after which no further recurring payments will be performed. Must be formatted as `YYYYMMDD`. * @type {string} * @memberof PaymentSequenceRecurring */ expiry?: string; /** * The minimum number of **days** between the different recurring payments. * @type {number} * @memberof PaymentSequenceRecurring */ frequency?: number; } //#endregion //#region src/model/payment-sequence.d.ts /** * This field needs to be sent in order to mark the beginning of a sequence of payments (recurring/subscriptions, installments, and so). Specific configurations can be set in the inside properties (`recurring`). * @export * @interface PaymentSequence */ interface PaymentSequence { /** * * @type {string} * @memberof PaymentSequence */ type: PaymentSequenceTypeEnum; /** * * @type {PaymentSequenceRecurring} * @memberof PaymentSequence */ recurring?: PaymentSequenceRecurring; } declare const PaymentSequenceTypeEnum: { readonly RECURRING: "recurring"; }; type PaymentSequenceTypeEnum = (typeof PaymentSequenceTypeEnum)[keyof typeof PaymentSequenceTypeEnum]; //#endregion //#region src/model/payment-transaction-type.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Controls when the funds will be captured. * @export * @enum {string} */ declare const PaymentTransactionType: { readonly SALE: "SALE"; readonly AUTH: "AUTH"; readonly PAYOUT: "PAYOUT"; readonly VERIF: "VERIF"; }; type PaymentTransactionType = (typeof PaymentTransactionType)[keyof typeof PaymentTransactionType]; //#endregion //#region src/model/create-payment-request.d.ts /** * * @export * @interface CreatePaymentRequest */ interface CreatePaymentRequest { /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof CreatePaymentRequest */ amount: number; /** * Three-letter [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217), in uppercase. Must be a supported currency. * @type {string} * @memberof CreatePaymentRequest */ currency: string; /** * An order ID from your system. A unique identifier that can be used to reconcile the payment with your internal system. * @type {string} * @memberof CreatePaymentRequest */ orderId: string; /** * The URL to which a payment result should be sent asynchronously. * @type {string} * @memberof CreatePaymentRequest */ callbackUrl?: string; /** * The URL the customer will be directed to after transaction completed (successful or failed - except if `failUrl` is provided). * @type {string} * @memberof CreatePaymentRequest */ completeUrl?: string; /** * The URL the customer will be directed to after transaction has failed, instead of `completeUrl` (used in hosted payment page). This allows to provide two different URLs for successful and failed payments. * @type {string} * @memberof CreatePaymentRequest */ failUrl?: string; /** * The URL the customer will be directed to if they decide to cancel payment and return to your website (used in hosted payment page). * @type {string} * @memberof CreatePaymentRequest */ cancelUrl?: string; /** * A payment token generated by monei.js [Components](https://docs.monei.com/monei-js/overview/) or a paymentToken [saved after a previous successful payment](https://docs.monei.com/guides/save-payment-method/). In case of the first one, you will also need to send the `sessionId` used to generate the token in the first place. * @type {string} * @memberof CreatePaymentRequest */ paymentToken?: string; /** * A unique identifier within your system that adds security to the payment process. You need to pass the same session ID as the one used on the frontend to initialize MONEI Component (if you needed to). This is required if a payment token (not permanent) was already generated in the frontend. * @type {string} * @memberof CreatePaymentRequest */ sessionId?: string; /** * If set to true a permanent token that represents a payment method used in the payment will be generated. * @type {boolean} * @memberof CreatePaymentRequest */ generatePaymentToken?: boolean; /** * * @type {PaymentPaymentMethodInput} * @memberof CreatePaymentRequest */ paymentMethod?: PaymentPaymentMethodInput; /** * * @type {PaymentPaymentMethods} * @memberof CreatePaymentRequest */ allowedPaymentMethods?: PaymentPaymentMethods; /** * * @type {PaymentTransactionType} * @memberof CreatePaymentRequest */ transactionType?: PaymentTransactionType; /** * * @type {PaymentSequence} * @memberof CreatePaymentRequest */ sequence?: PaymentSequence; /** * A unique identifier of the Store. If specified the payment is attached to this Store. * @type {string} * @memberof CreatePaymentRequest */ storeId?: string; /** * A unique identifier of the Point of Sale. If specified the payment is attached to this Point of Sale. If there is a QR code attached to the same Point of Sale, this payment will be available by scanning the QR code. * @type {string} * @memberof CreatePaymentRequest */ pointOfSaleId?: string; /** * A unique identifier of the Subscription. If specified the payment is attached to this Subscription. * @type {string} * @memberof CreatePaymentRequest */ subscriptionId?: string; /** * If set to `true`, the new payment will be automatically created when customer visits the payment link of the previously failed payment. Is automatically set to `true` if `completeUrl` is not provided.(set this value to `true` to create \"Pay By Link\" payments). * @type {boolean} * @memberof CreatePaymentRequest */ autoRecover?: boolean; /** * An arbitrary string attached to the payment. Often useful for displaying to users. * @type {string} * @memberof CreatePaymentRequest */ description?: string; /** * Charge the customer\'s default payment method, so you do not have to look its token up first. Requires `customerId`, and cannot be combined with `paymentToken` or `paymentMethod` — naming a payment method as well leaves no way to tell which one you meant. The payment is rejected when the customer has no default. * @type {boolean} * @memberof CreatePaymentRequest */ useDefaultPaymentMethod?: boolean; /** * The [customer](https://docs.monei.com/apis/rest/customers-create/) this payment belongs to. Linking a payment to a customer saves its payment method under that customer and groups the buyer\'s payments together. Not to be confused with `paymentMethod.trustly.customerId`, which is an identifier Trustly returns for its own account holder and is unrelated. * @type {string} * @memberof CreatePaymentRequest */ customerId?: string; /** * * @type {PaymentCustomer} * @memberof CreatePaymentRequest */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof CreatePaymentRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof CreatePaymentRequest */ shippingDetails?: PaymentShippingDetails; /** * * @type {PaymentSessionDetails} * @memberof CreatePaymentRequest */ sessionDetails?: PaymentSessionDetails; /** * Payment expiration time as a Unix timestamp in seconds. Must be **in the future** — a value in the past, or equal to the current second, is rejected at creation with a `400` error (`expireAt must be in the future`). There is no minimum beyond that, so short-lived payments are allowed. Defaults to 7 days after creation when omitted. Once this time passes, the payment transitions to `EXPIRED` and can no longer be confirmed; reading an overdue pending payment already reports it as `EXPIRED`. * @type {number} * @memberof CreatePaymentRequest */ expireAt?: number; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof CreatePaymentRequest */ metadata?: object; } //#endregion //#region src/model/create-pos-auth-token-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface CreatePosAuthTokenRequest */ interface CreatePosAuthTokenRequest { /** * A unique identifier of the Point of Sale. If specified the payment is attached to this Point of Sale. If there is a QR code attached to the same Point of Sale, this payment will be available by scanning the QR code. * @type {string} * @memberof CreatePosAuthTokenRequest */ pointOfSaleId?: string; /** * A unique identifier of the Store. If specified the payment is attached to this Store. * @type {string} * @memberof CreatePosAuthTokenRequest */ storeId?: string; } //#endregion //#region src/model/subscription-interval.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Subscription interval. The `minute` and `hour` intervals are only available in test mode. * @export * @enum {string} */ declare const SubscriptionInterval: { readonly MINUTE: "minute"; readonly HOUR: "hour"; readonly DAY: "day"; readonly WEEK: "week"; readonly MONTH: "month"; readonly QUARTER: "quarter"; readonly YEAR: "year"; }; type SubscriptionInterval = (typeof SubscriptionInterval)[keyof typeof SubscriptionInterval]; //#endregion //#region src/model/subscription-retry-schedule-inner.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface SubscriptionRetryScheduleInner */ interface SubscriptionRetryScheduleInner { /** * The unit of time to wait before the retry attempt. * @type {string} * @memberof SubscriptionRetryScheduleInner */ interval: SubscriptionRetryScheduleInnerIntervalEnum; /** * The number of intervals to wait before the retry attempt. * @type {number} * @memberof SubscriptionRetryScheduleInner */ intervalCount: number; } declare const SubscriptionRetryScheduleInnerIntervalEnum: { readonly DAY: "day"; readonly WEEK: "week"; readonly MONTH: "month"; readonly YEAR: "year"; }; type SubscriptionRetryScheduleInnerIntervalEnum = (typeof SubscriptionRetryScheduleInnerIntervalEnum)[keyof typeof SubscriptionRetryScheduleInnerIntervalEnum]; //#endregion //#region src/model/subscription-retry-schedule.d.ts /** * Defines a custom schedule for retrying failed subscription payments. Each entry in the array specifies how long to wait before attempting the next payment retry. If not specified, the system\'s default retry schedule will be used. * @export * @interface SubscriptionRetrySchedule */ interface SubscriptionRetrySchedule extends Array {} //#endregion //#region src/model/create-subscription-request.d.ts /** * * @export * @interface CreateSubscriptionRequest */ interface CreateSubscriptionRequest { /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof CreateSubscriptionRequest */ amount: number; /** * Three-letter [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217), in uppercase. Must be a supported currency. * @type {string} * @memberof CreateSubscriptionRequest */ currency: string; /** * * @type {SubscriptionInterval} * @memberof CreateSubscriptionRequest */ interval: SubscriptionInterval; /** * Number of intervals between subscription payments. * @type {number} * @memberof CreateSubscriptionRequest */ intervalCount?: number; /** * * @type {SubscriptionPaymentMethods} * @memberof CreateSubscriptionRequest */ allowedPaymentMethods?: SubscriptionPaymentMethods; /** * An arbitrary string attached to the subscription. Often useful for displaying to users. * @type {string} * @memberof CreateSubscriptionRequest */ description?: string; /** * The [customer](https://docs.monei.com/apis/rest/customers-create/) this subscription belongs to. Linking a subscription to a customer turns on **renewal failover**: when a renewal is declined by the issuing bank, MONEI retries it against up to two of the customer\'s other saved payment methods within the same attempt, before the subscription goes `PAST_DUE`. One declined renewal can therefore produce up to three charge attempts on different cards. If one succeeds the subscription continues and moves to that payment method. * @type {string} * @memberof CreateSubscriptionRequest */ customerId?: string; /** * * @type {PaymentCustomer} * @memberof CreateSubscriptionRequest */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof CreateSubscriptionRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof CreateSubscriptionRequest */ shippingDetails?: PaymentShippingDetails; /** * The end date of the trial period. Measured in seconds since the Unix epoch. * @type {number} * @memberof CreateSubscriptionRequest */ trialPeriodEnd?: number; /** * Number of days the trial period lasts. * @type {number} * @memberof CreateSubscriptionRequest */ trialPeriodDays?: number; /** * Amount charged on each billing cycle during the trial period, as a positive integer in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). Once the trial ends, the subscription\'s regular `amount` is charged. Use this to offer discounted introductory pricing. Can be combined with `trialIntervalCount` (charged each cycle for that many cycles) or with `trialPeriodDays`/`trialPeriodEnd` (charged once at activation, covering the subscription until the trial period ends). * @type {number} * @memberof CreateSubscriptionRequest */ trialAmount?: number; /** * Number of billing cycles charged at `trialAmount` before the regular `amount` applies, using the subscription\'s `interval` (e.g., `interval` of `month` with a `trialIntervalCount` of 3 charges the `trialAmount` for the first 3 months). Requires `trialAmount` and cannot be combined with `trialPeriodDays` or `trialPeriodEnd`. In responses, the value decrements after each trial payment and is removed once the trial ends. * @type {number} * @memberof CreateSubscriptionRequest */ trialIntervalCount?: number; /** * * @type {SubscriptionRetrySchedule} * @memberof CreateSubscriptionRequest */ retrySchedule?: SubscriptionRetrySchedule; /** * The URL will be called each time subscription status changes. You will receive a subscription object in the body of the request. * @type {string} * @memberof CreateSubscriptionRequest */ callbackUrl?: string; /** * The URL will be called each time subscription creates a new payments. You will receive the payment object in the body of the request. * @type {string} * @memberof CreateSubscriptionRequest */ paymentCallbackUrl?: string; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof CreateSubscriptionRequest */ metadata?: object; } //#endregion //#region src/model/customer.d.ts /** * * @export * @interface Customer */ interface Customer { /** * Unique identifier for the customer. * @type {string} * @memberof Customer */ id: string; /** * The customer\'s email address. * @type {string} * @memberof Customer */ email?: string; /** * The customer\'s full name or business name. * @type {string} * @memberof Customer */ name?: string; /** * The customer\'s phone number in E.164 format. * @type {string} * @memberof Customer */ phone?: string; /** * * @type {PaymentBillingDetails} * @memberof Customer */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof Customer */ shippingDetails?: PaymentShippingDetails; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof Customer */ metadata?: object; /** * The payment method charged when a payment sets `useDefaultPaymentMethod`. MONEI fills this only while it is empty: the first reusable payment method the customer saves becomes the default, and a value you set here is kept. Deleting that payment method clears the field, so the next reusable one the customer saves becomes the new default. It must be the ID of a payment method this customer already owns, and one that can be reused for future payments. * @type {string} * @memberof Customer */ defaultTokenId?: string; /** * Time at which the resource was created. * @type {string} * @memberof Customer */ createdAt?: string; /** * Time at which the resource was last updated. * @type {string} * @memberof Customer */ updatedAt?: string; } //#endregion //#region src/model/payment-payment-method-bizum.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details about the Bizum account used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodBizum */ interface PaymentPaymentMethodBizum { /** * Phone number in E.164 format used to pay with `bizum`. * @type {string} * @memberof PaymentPaymentMethodBizum */ phoneNumber?: string; } //#endregion //#region src/model/payment-payment-method-card.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details about the card used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodCard */ interface PaymentPaymentMethodCard { /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof PaymentPaymentMethodCard */ country?: string; /** * Card brand. * @type {string} * @memberof PaymentPaymentMethodCard */ brand?: PaymentPaymentMethodCardBrandEnum; /** * Card type `debit` or `credit`. * @type {string} * @memberof PaymentPaymentMethodCard */ type?: PaymentPaymentMethodCardTypeEnum; /** * Whether this transaction used 3D Secure authentication. * @type {boolean} * @memberof PaymentPaymentMethodCard */ threeDSecure?: boolean; /** * The protocol version of the 3DS challenge. * @type {string} * @memberof PaymentPaymentMethodCard */ threeDSecureVersion?: string; /** * The flow used for 3DS authentication. * @type {string} * @memberof PaymentPaymentMethodCard */ threeDSecureFlow?: PaymentPaymentMethodCardThreeDSecureFlowEnum; /** * Time at which the card will expire. Measured in seconds since the Unix epoch. * @type {number} * @memberof PaymentPaymentMethodCard */ expiration?: number; /** * The last four digits of the card. * @type {string} * @memberof PaymentPaymentMethodCard */ last4?: string; /** * Unique identifier for the card number. Used to detect duplicate payment methods across customers. Not present for tokenized cards. * @type {string} * @memberof PaymentPaymentMethodCard */ fingerprint?: string; /** * The digital wallet used to tokenize the card. * @type {string} * @memberof PaymentPaymentMethodCard */ tokenizationMethod?: PaymentPaymentMethodCardTokenizationMethodEnum; /** * The name of the cardholder. * @type {string} * @memberof PaymentPaymentMethodCard */ cardholderName?: string; /** * The email of the cardholder. * @type {string} * @memberof PaymentPaymentMethodCard */ cardholderEmail?: string; } declare const PaymentPaymentMethodCardBrandEnum: { readonly VISA: "visa"; readonly MASTERCARD: "mastercard"; readonly DINERS: "diners"; readonly AMEX: "amex"; readonly JCB: "jcb"; readonly UNIONPAY: "unionpay"; readonly DISCOVER: "discover"; readonly UNKNOWN: "unknown"; }; type PaymentPaymentMethodCardBrandEnum = (typeof PaymentPaymentMethodCardBrandEnum)[keyof typeof PaymentPaymentMethodCardBrandEnum]; declare const PaymentPaymentMethodCardTypeEnum: { readonly DEBIT: "debit"; readonly CREDIT: "credit"; }; type PaymentPaymentMethodCardTypeEnum = (typeof PaymentPaymentMethodCardTypeEnum)[keyof typeof PaymentPaymentMethodCardTypeEnum]; declare const PaymentPaymentMethodCardThreeDSecureFlowEnum: { readonly CHALLENGE: "CHALLENGE"; readonly FRICTIONLESS: "FRICTIONLESS"; readonly FRICTIONLESS_CHALLENGE: "FRICTIONLESS_CHALLENGE"; readonly DIRECT: "DIRECT"; }; type PaymentPaymentMethodCardThreeDSecureFlowEnum = (typeof PaymentPaymentMethodCardThreeDSecureFlowEnum)[keyof typeof PaymentPaymentMethodCardThreeDSecureFlowEnum]; declare const PaymentPaymentMethodCardTokenizationMethodEnum: { readonly APPLE_PAY: "applePay"; readonly GOOGLE_PAY: "googlePay"; readonly CLICK_TO_PAY: "clickToPay"; }; type PaymentPaymentMethodCardTokenizationMethodEnum = (typeof PaymentPaymentMethodCardTokenizationMethodEnum)[keyof typeof PaymentPaymentMethodCardTokenizationMethodEnum]; //#endregion //#region src/model/payment-payment-method-klarna.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details from Klarna order used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodKlarna */ interface PaymentPaymentMethodKlarna { /** * * @type {string} * @memberof PaymentPaymentMethodKlarna */ billingCategory?: PaymentPaymentMethodKlarnaBillingCategoryEnum; /** * * @type {string} * @memberof PaymentPaymentMethodKlarna */ authPaymentMethod?: PaymentPaymentMethodKlarnaAuthPaymentMethodEnum; } declare const PaymentPaymentMethodKlarnaBillingCategoryEnum: { readonly PAY_LATER: "PAY_LATER"; readonly PAY_NOW: "PAY_NOW"; readonly SLICE_IT: "SLICE_IT"; readonly SLICE_IT_BY_CARD: "SLICE_IT_BY_CARD"; readonly PAY_IN_PARTS: "PAY_IN_PARTS"; }; type PaymentPaymentMethodKlarnaBillingCategoryEnum = (typeof PaymentPaymentMethodKlarnaBillingCategoryEnum)[keyof typeof PaymentPaymentMethodKlarnaBillingCategoryEnum]; declare const PaymentPaymentMethodKlarnaAuthPaymentMethodEnum: { readonly INVOICE: "invoice"; readonly FIXED_AMOUNT: "fixed_amount"; readonly PIX: "pix"; readonly BASE_ACCOUNT: "base_account"; readonly DEFERRED_INTEREST: "deferred_interest"; readonly DIRECT_DEBIT: "direct_debit"; readonly DIRECT_BANK_TRANSFER: "direct_bank_transfer"; readonly B2B_INVOICE: "b2b_invoice"; readonly CARD: "card"; readonly SLICE_IT_BY_CARD: "slice_it_by_card"; }; type PaymentPaymentMethodKlarnaAuthPaymentMethodEnum = (typeof PaymentPaymentMethodKlarnaAuthPaymentMethodEnum)[keyof typeof PaymentPaymentMethodKlarnaAuthPaymentMethodEnum]; //#endregion //#region src/model/payment-payment-method-mbway.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details from MBWay order used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodMbway */ interface PaymentPaymentMethodMbway { /** * Phone number in E.164 format used to pay with `mbway`. * @type {string} * @memberof PaymentPaymentMethodMbway */ phoneNumber?: string; } //#endregion //#region src/model/payment-payment-method-paypal.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details from Paypal order used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodPaypal */ interface PaymentPaymentMethodPaypal { /** * The Paypal\'s order ID. * @type {string} * @memberof PaymentPaymentMethodPaypal */ orderId?: string; /** * The Paypal\'s payer ID. * @type {string} * @memberof PaymentPaymentMethodPaypal */ payerId?: string; /** * The Paypal\'s payer email. * @type {string} * @memberof PaymentPaymentMethodPaypal */ email?: string; /** * The Paypal\'s payer name. * @type {string} * @memberof PaymentPaymentMethodPaypal */ name?: string; } //#endregion //#region src/model/payment-payment-method-sepa.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details from SEPA order used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodSepa */ interface PaymentPaymentMethodSepa { /** * The address of the account holder. * @type {string} * @memberof PaymentPaymentMethodSepa */ accountholderAddress?: string; /** * The email of the account holder. * @type {string} * @memberof PaymentPaymentMethodSepa */ accountholderEmail?: string; /** * The name of the account holder. * @type {string} * @memberof PaymentPaymentMethodSepa */ accountholderName?: string; /** * The country code of the account holder. * @type {string} * @memberof PaymentPaymentMethodSepa */ countryCode?: string; /** * The address of the bank. * @type {string} * @memberof PaymentPaymentMethodSepa */ bankAddress?: string; /** * The code of the bank. * @type {string} * @memberof PaymentPaymentMethodSepa */ bankCode?: string; /** * The name of the bank. * @type {string} * @memberof PaymentPaymentMethodSepa */ bankName?: string; /** * The BIC of the bank. * @type {string} * @memberof PaymentPaymentMethodSepa */ bic?: string; /** * The last 4 digits of the IBAN. * @type {string} * @memberof PaymentPaymentMethodSepa */ last4?: string; /** * Unique identifier for the IBAN. Used to detect duplicate payment methods across customers. * @type {string} * @memberof PaymentPaymentMethodSepa */ fingerprint?: string; } //#endregion //#region src/model/payment-payment-method-trustly.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details from Trustly order used as payment method at the time of the transaction. * @export * @interface PaymentPaymentMethodTrustly */ interface PaymentPaymentMethodTrustly { /** * The Trustly\'s customer ID. * @type {string} * @memberof PaymentPaymentMethodTrustly */ customerId?: string; } //#endregion //#region src/model/payment-payment-method.d.ts /** * Details about the payment method at the time of the transaction. * @export * @interface PaymentPaymentMethod */ interface PaymentPaymentMethod { /** * Payment method type. * @type {string} * @memberof PaymentPaymentMethod */ method?: PaymentPaymentMethodMethodEnum; /** * * @type {PaymentPaymentMethodCard} * @memberof PaymentPaymentMethod */ card?: PaymentPaymentMethodCard; /** * * @type {PaymentPaymentMethodBizum} * @memberof PaymentPaymentMethod */ bizum?: PaymentPaymentMethodBizum; /** * * @type {PaymentPaymentMethodPaypal} * @memberof PaymentPaymentMethod */ paypal?: PaymentPaymentMethodPaypal; /** * * @type {PaymentPaymentMethodMbway} * @memberof PaymentPaymentMethod */ mbway?: PaymentPaymentMethodMbway; /** * * @type {PaymentPaymentMethodTrustly} * @memberof PaymentPaymentMethod */ trustly?: PaymentPaymentMethodTrustly; /** * * @type {PaymentPaymentMethodSepa} * @memberof PaymentPaymentMethod */ sepa?: PaymentPaymentMethodSepa; /** * * @type {PaymentPaymentMethodKlarna} * @memberof PaymentPaymentMethod */ klarna?: PaymentPaymentMethodKlarna; } declare const PaymentPaymentMethodMethodEnum: { readonly ALIPAY: "alipay"; readonly CARD: "card"; readonly BIZUM: "bizum"; readonly PAYPAL: "paypal"; readonly MBWAY: "mbway"; readonly MULTIBANCO: "multibanco"; readonly I_DEAL: "iDeal"; readonly BANCONTACT: "bancontact"; readonly SOFORT: "sofort"; readonly TRUSTLY: "trustly"; readonly SEPA: "sepa"; readonly KLARNA: "klarna"; readonly GIROPAY: "giropay"; readonly EPS: "eps"; readonly BLIK: "blik"; }; type PaymentPaymentMethodMethodEnum = (typeof PaymentPaymentMethodMethodEnum)[keyof typeof PaymentPaymentMethodMethodEnum]; //#endregion //#region src/model/customer-payment-method.d.ts /** * A payment method the customer has saved. Card and account numbers are never returned — `paymentMethod` carries only the display details, such as the brand and the last four digits. * @export * @interface CustomerPaymentMethod */ interface CustomerPaymentMethod { /** * Identifier of the saved payment method. Pass it as `paymentToken` on a payment, as `defaultTokenId` when updating the customer, or to delete the payment method. * @type {string} * @memberof CustomerPaymentMethod */ id: string; /** * How the payment method is stored. One of `STICKY` or `ENCRYPTED_STICKY`. * @type {string} * @memberof CustomerPaymentMethod */ type: string; /** * * @type {PaymentPaymentMethod} * @memberof CustomerPaymentMethod */ paymentMethod?: PaymentPaymentMethod; /** * Time at which the payment method expires, in seconds since the Unix epoch. For a card this is one month after the card\'s own expiry. Absent when the payment method does not expire. * @type {number} * @memberof CustomerPaymentMethod */ expireAt?: number; /** * Time at which the resource was created. * @type {string} * @memberof CustomerPaymentMethod */ createdAt?: string; /** * Whether this payment method was saved for merchant-initiated charges, such as subscription renewals, rather than being one the buyer chooses at checkout. * @type {boolean} * @memberof CustomerPaymentMethod */ sequence: boolean; } //#endregion //#region src/model/deleted-resource.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface DeletedResource */ interface DeletedResource { /** * Always `true`. The request failed otherwise. * @type {boolean} * @memberof DeletedResource */ success: boolean; } //#endregion //#region src/model/internal-server-error.d.ts /** * @type InternalServerError * @export */ type InternalServerError = ApiException$1; //#endregion //#region src/model/not-found-error.d.ts /** * @type NotFoundError * @export */ type NotFoundError = ApiException$1; //#endregion //#region src/model/pause-subscription-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PauseSubscriptionRequest */ interface PauseSubscriptionRequest { /** * If true, the subscription will be paused at the end of the current period. * @type {boolean} * @memberof PauseSubscriptionRequest */ pauseAtPeriodEnd?: boolean; /** * Number of intervals when subscription will be paused before it activates again. * @type {number} * @memberof PauseSubscriptionRequest */ pauseIntervalCount?: number; } //#endregion //#region src/model/payment-last-refund-reason.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The reason of the last refund transaction. * @export * @enum {string} */ declare const PaymentLastRefundReason: { readonly DUPLICATED: "duplicated"; readonly FRAUDULENT: "fraudulent"; readonly REQUESTED_BY_CUSTOMER: "requested_by_customer"; readonly ORDER_CANCELED: "order_canceled"; }; type PaymentLastRefundReason = (typeof PaymentLastRefundReason)[keyof typeof PaymentLastRefundReason]; //#endregion //#region src/model/payment-next-action.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * If present, this property tells you what actions you need to take in order for your customer to fulfill a payment using the provided source. * @export * @interface PaymentNextAction */ interface PaymentNextAction { /** * - `CONFIRM` - Your customer needs to be redirected to a [hosted payment page](https://docs.monei.com/integrations/use-prebuilt-payment-page/) or confirm payment using [payment token](https://docs.monei.com/integrations/build-custom-checkout/#3-confirm-the-payment-client-side). The **redirectUrl** will point to the hosted payment page. - `FRICTIONLESS_CHALLENGE` - Your customer needs to be redirected to the frictionless 3d secure challenge page provided by the bank. The **redirectUrl** will point to the frictionless 3d secure challenge page provided by the bank. - `CHALLENGE` - Your customer needs to be redirected to the 3d secure challenge page provided by the bank. The **redirectUrl** will point to the 3d secure challenge page provided by the bank. - `COMPLETE` - The payment is completed. The **redirectUrl** will be the **completeUrl** if it was provided when the payment was created. - `BIZUM_CHALLENGE` - Your customer will be redirected to the Bizum hosted payment page. - `INSTALLMENT_SELECT` - Your customer needs to choose how to pay (in full or in installments with MONEI Flex) on the page at **redirectUrl**. * @type {string} * @memberof PaymentNextAction */ type?: PaymentNextActionTypeEnum; /** * If `true` you have to redirect your customer to the **redirectUrl** to continue payment process. * @type {boolean} * @memberof PaymentNextAction */ mustRedirect?: boolean; /** * Redirect your customer to this url to continue payment process. * @type {string} * @memberof PaymentNextAction */ redirectUrl?: string; } declare const PaymentNextActionTypeEnum: { readonly CONFIRM: "CONFIRM"; readonly CHALLENGE: "CHALLENGE"; readonly FRICTIONLESS_CHALLENGE: "FRICTIONLESS_CHALLENGE"; readonly BIZUM_CHALLENGE: "BIZUM_CHALLENGE"; readonly INSTALLMENT_SELECT: "INSTALLMENT_SELECT"; readonly COMPLETE: "COMPLETE"; }; type PaymentNextActionTypeEnum = (typeof PaymentNextActionTypeEnum)[keyof typeof PaymentNextActionTypeEnum]; //#endregion //#region src/model/payment-shop.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The information about the shop (used in [hosted payment page](https://docs.monei.com/integrations/use-prebuilt-payment-page/)). * @export * @interface PaymentShop */ interface PaymentShop { /** * The shop name. * @type {string} * @memberof PaymentShop */ name?: string; /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof PaymentShop */ country?: string; } //#endregion //#region src/model/payment-status.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The status of the payment. * @export * @enum {string} */ declare const PaymentStatus: { readonly SUCCEEDED: "SUCCEEDED"; readonly PENDING: "PENDING"; readonly FAILED: "FAILED"; readonly CANCELED: "CANCELED"; readonly REFUNDED: "REFUNDED"; readonly PARTIALLY_REFUNDED: "PARTIALLY_REFUNDED"; readonly AUTHORIZED: "AUTHORIZED"; readonly EXPIRED: "EXPIRED"; readonly PENDING_PROCESSING: "PENDING_PROCESSING"; readonly PAID_OUT: "PAID_OUT"; }; type PaymentStatus = (typeof PaymentStatus)[keyof typeof PaymentStatus]; //#endregion //#region src/model/payment-trace-details.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Information related to the browsing session of the user who initiated the payment. * @export * @interface PaymentTraceDetails */ interface PaymentTraceDetails { /** * The IP address where the operation originated. * @type {string} * @memberof PaymentTraceDetails */ ip?: string; /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof PaymentTraceDetails */ countryCode?: string; /** * Two-letter language code ([ISO 639-1](https://en.wikipedia.org/wiki/ISO_639-1)). * @type {string} * @memberof PaymentTraceDetails */ lang?: string; /** * Device type, could be `desktop`, `mobile`, `smartTV`, `tablet`. * @type {string} * @memberof PaymentTraceDetails */ deviceType?: string; /** * Information about the device used for the browser session (e.g., `iPhone`). * @type {string} * @memberof PaymentTraceDetails */ deviceModel?: string; /** * The browser used in this browser session (e.g., `Mobile Safari`). * @type {string} * @memberof PaymentTraceDetails */ browser?: string; /** * The version for the browser session (e.g., `13.1.1`). * @type {string} * @memberof PaymentTraceDetails */ browserVersion?: string; /** * Operation system (e.g., `iOS`). * @type {string} * @memberof PaymentTraceDetails */ os?: string; /** * Operation system version (e.g., `13.5.1`). * @type {string} * @memberof PaymentTraceDetails */ osVersion?: string; /** * The source component from where the operation was generated (mostly for our SDK\'s). * @type {string} * @memberof PaymentTraceDetails */ source?: string; /** * The source component version from where the operation was generated (mostly for our SDK\'s). * @type {string} * @memberof PaymentTraceDetails */ sourceVersion?: string; /** * Full user agent string of the browser session. * @type {string} * @memberof PaymentTraceDetails */ userAgent?: string; /** * Browser accept header. * @type {string} * @memberof PaymentTraceDetails */ browserAccept?: string; /** * The color depth of the browser session (e.g., `24`). * @type {string} * @memberof PaymentTraceDetails */ browserColorDepth?: string; /** * The screen height of the browser session (e.g., `1152`). * @type {string} * @memberof PaymentTraceDetails */ browserScreenHeight?: string; /** * The screen width of the browser session (e.g., `2048`). * @type {string} * @memberof PaymentTraceDetails */ browserScreenWidth?: string; /** * The timezone offset of the browser session (e.g., `-120`). * @type {string} * @memberof PaymentTraceDetails */ browserTimezoneOffset?: string; /** * The ID of the user that started the operation. * @type {string} * @memberof PaymentTraceDetails */ userId?: string; /** * The email of the user that started the operation. * @type {string} * @memberof PaymentTraceDetails */ userEmail?: string; } //#endregion //#region src/model/payment.d.ts /** * * @export * @interface Payment */ interface Payment { /** * Unique identifier for the payment. * @type {string} * @memberof Payment */ id: string; /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof Payment */ amount: number; /** * Three-letter [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217), in uppercase. Must be a supported currency. * @type {string} * @memberof Payment */ currency: string; /** * An order ID from your system. A unique identifier that can be used to reconcile the payment with your internal system. * @type {string} * @memberof Payment */ orderId?: string; /** * An arbitrary string attached to the payment. Often useful for displaying to users. * @type {string} * @memberof Payment */ description?: string; /** * MONEI Account identifier. * @type {string} * @memberof Payment */ accountId: string; /** * Unique identifier provided by the bank performing transaction. * @type {string} * @memberof Payment */ authorizationCode?: string; /** * Has the value `true` if the resource exists in live mode or the value `false` if the resource exists in test mode. * @type {boolean} * @memberof Payment */ livemode: boolean; /** * * @type {PaymentStatus} * @memberof Payment */ status: PaymentStatus; /** * Payment status code. * @type {string} * @memberof Payment */ statusCode?: string; /** * Human readable status message, can be displayed to a user. * @type {string} * @memberof Payment */ statusMessage?: string; /** * The [customer](https://docs.monei.com/apis/rest/customers-create/) this payment belongs to. Linking a payment to a customer saves its payment method under that customer and groups the buyer\'s payments together. Not to be confused with `paymentMethod.trustly.customerId`, which is an identifier Trustly returns for its own account holder and is unrelated. * @type {string} * @memberof Payment */ customerId?: string; /** * * @type {PaymentCustomer} * @memberof Payment */ customer?: PaymentCustomer; /** * * @type {PaymentShop} * @memberof Payment */ shop?: PaymentShop; /** * * @type {PaymentBillingDetails} * @memberof Payment */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof Payment */ shippingDetails?: PaymentShippingDetails; /** * Amount in cents refunded (can be less than the amount attribute on the payment if a partial refund was issued). * @type {number} * @memberof Payment */ refundedAmount?: number; /** * Amount in cents refunded in the last transaction. * @type {number} * @memberof Payment */ lastRefundAmount?: number; /** * * @type {PaymentLastRefundReason} * @memberof Payment */ lastRefundReason?: PaymentLastRefundReason; /** * * @type {PaymentCancellationReason} * @memberof Payment */ cancellationReason?: PaymentCancellationReason; /** * * @type {PaymentSessionDetails} * @memberof Payment */ sessionDetails?: PaymentSessionDetails; /** * * @type {PaymentTraceDetails} * @memberof Payment */ traceDetails?: PaymentTraceDetails; /** * A permanent token represents a payment method used in the payment. Pass `generatePaymentToken: true` when you creating a payment to generate it. You can pass it as `paymentToken` parameter to create other payments with the same payment method. This token does not expire, and should only be used server-side. * @type {string} * @memberof Payment */ paymentToken?: string; /** * * @type {PaymentPaymentMethod} * @memberof Payment */ paymentMethod?: PaymentPaymentMethod; /** * * @type {PaymentSequence} * @memberof Payment */ sequence?: PaymentSequence; /** * A permanent identifier that refers to the initial payment of a sequence of payments. This value needs to be sent in the path for `RECURRING` payments. * @type {string} * @memberof Payment */ sequenceId?: string; /** * A unique identifier of the Store. If specified the payment is attached to this Store. * @type {string} * @memberof Payment */ storeId?: string; /** * A unique identifier of the Point of Sale. If specified the payment is attached to this Point of Sale. If there is a QR code attached to the same Point of Sale, this payment will be available by scanning the QR code. * @type {string} * @memberof Payment */ pointOfSaleId?: string; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof Payment */ metadata?: object; /** * * @type {PaymentNextAction} * @memberof Payment */ nextAction?: PaymentNextAction; /** * Time at which the resource was created. Measured in seconds since the Unix epoch. * @type {number} * @memberof Payment */ createdAt?: number; /** * Time at which the resource updated last time. Measured in seconds since the Unix epoch. * @type {number} * @memberof Payment */ updatedAt?: number; } //#endregion //#region src/model/payment-message-channel.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The channel used to send the payment message. * @export * @enum {string} */ declare const PaymentMessageChannel: { readonly EMAIL: "EMAIL"; readonly WHATSAPP: "WHATSAPP"; readonly SMS: "SMS"; }; type PaymentMessageChannel = (typeof PaymentMessageChannel)[keyof typeof PaymentMessageChannel]; //#endregion //#region src/model/payment-message-language.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The language of message sent to the customer. If not provided the default customer language is used if available. * @export * @enum {string} */ declare const PaymentMessageLanguage: { readonly EN: "en"; readonly ES: "es"; readonly CA: "ca"; readonly PT: "pt"; readonly DE: "de"; readonly IT: "it"; readonly FR: "fr"; }; type PaymentMessageLanguage = (typeof PaymentMessageLanguage)[keyof typeof PaymentMessageLanguage]; //#endregion //#region src/model/payment-methods-metadata-alipay.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataAlipay */ interface PaymentMethodsMetadataAlipay { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataAlipay */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-apple-pay.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataApplePay */ interface PaymentMethodsMetadataApplePay { /** * Apple Pay merchant ID * @type {string} * @memberof PaymentMethodsMetadataApplePay */ merchantId?: string; } //#endregion //#region src/model/payment-methods-metadata-bancontact.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataBancontact */ interface PaymentMethodsMetadataBancontact { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataBancontact */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-bizum.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataBizum */ interface PaymentMethodsMetadataBizum { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataBizum */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-blik.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataBlik */ interface PaymentMethodsMetadataBlik { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataBlik */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-card.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataCard */ interface PaymentMethodsMetadataCard { /** * List of card brands supported * @type {Array} * @memberof PaymentMethodsMetadataCard */ brands?: Array; } //#endregion //#region src/model/payment-methods-metadata-click-to-pay-discover.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataClickToPayDiscover */ interface PaymentMethodsMetadataClickToPayDiscover { /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayDiscover */ srciDpaId?: string; /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayDiscover */ srcInitiatorId?: string; } //#endregion //#region src/model/payment-methods-metadata-click-to-pay-mastercard.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataClickToPayMastercard */ interface PaymentMethodsMetadataClickToPayMastercard { /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayMastercard */ srciDpaId?: string; /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayMastercard */ srcInitiatorId?: string; } //#endregion //#region src/model/payment-methods-metadata-click-to-pay-visa.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataClickToPayVisa */ interface PaymentMethodsMetadataClickToPayVisa { /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayVisa */ srciDpaId?: string; /** * * @type {string} * @memberof PaymentMethodsMetadataClickToPayVisa */ srcInitiatorId?: string; } //#endregion //#region src/model/payment-methods-metadata-click-to-pay.d.ts /** * * @export * @interface PaymentMethodsMetadataClickToPay */ interface PaymentMethodsMetadataClickToPay { /** * Whether token support is enabled * @type {boolean} * @memberof PaymentMethodsMetadataClickToPay */ tokenSupport?: boolean; /** * Whether the method is preselected * @type {boolean} * @memberof PaymentMethodsMetadataClickToPay */ preselected?: boolean; /** * * @type {PaymentMethodsMetadataClickToPayVisa} * @memberof PaymentMethodsMetadataClickToPay */ visa?: PaymentMethodsMetadataClickToPayVisa; /** * * @type {PaymentMethodsMetadataClickToPayMastercard} * @memberof PaymentMethodsMetadataClickToPay */ mastercard?: PaymentMethodsMetadataClickToPayMastercard; /** * * @type {PaymentMethodsMetadataClickToPayDiscover} * @memberof PaymentMethodsMetadataClickToPay */ discover?: PaymentMethodsMetadataClickToPayDiscover; } //#endregion //#region src/model/payment-methods-metadata-eps.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataEps */ interface PaymentMethodsMetadataEps { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataEps */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-giropay.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataGiropay */ interface PaymentMethodsMetadataGiropay { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataGiropay */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-google-pay.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataGooglePay */ interface PaymentMethodsMetadataGooglePay { /** * Google Pay merchant ID * @type {string} * @memberof PaymentMethodsMetadataGooglePay */ merchantId?: string; /** * Whether CVC is required for Google Pay transactions * @type {boolean} * @memberof PaymentMethodsMetadataGooglePay */ cvcRequired?: boolean; } //#endregion //#region src/model/payment-methods-metadata-ideal.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataIDeal */ interface PaymentMethodsMetadataIDeal { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataIDeal */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-klarna.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataKlarna */ interface PaymentMethodsMetadataKlarna { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataKlarna */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-mbway.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataMbway */ interface PaymentMethodsMetadataMbway { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataMbway */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-sepa.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataSepa */ interface PaymentMethodsMetadataSepa { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataSepa */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-sofort.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataSofort */ interface PaymentMethodsMetadataSofort { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataSofort */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata-trustly.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PaymentMethodsMetadataTrustly */ interface PaymentMethodsMetadataTrustly { /** * List of countries where the payment method is available * @type {Array} * @memberof PaymentMethodsMetadataTrustly */ countries?: Array; } //#endregion //#region src/model/payment-methods-metadata.d.ts /** * Additional configuration details for each payment method. * @export * @interface PaymentMethodsMetadata */ interface PaymentMethodsMetadata { /** * * @type {PaymentMethodsMetadataAlipay} * @memberof PaymentMethodsMetadata */ alipay?: PaymentMethodsMetadataAlipay; /** * * @type {PaymentMethodsMetadataBancontact} * @memberof PaymentMethodsMetadata */ bancontact?: PaymentMethodsMetadataBancontact; /** * * @type {PaymentMethodsMetadataBizum} * @memberof PaymentMethodsMetadata */ bizum?: PaymentMethodsMetadataBizum; /** * * @type {PaymentMethodsMetadataBlik} * @memberof PaymentMethodsMetadata */ blik?: PaymentMethodsMetadataBlik; /** * * @type {PaymentMethodsMetadataCard} * @memberof PaymentMethodsMetadata */ card?: PaymentMethodsMetadataCard; /** * * @type {PaymentMethodsMetadataEps} * @memberof PaymentMethodsMetadata */ eps?: PaymentMethodsMetadataEps; /** * * @type {PaymentMethodsMetadataIDeal} * @memberof PaymentMethodsMetadata */ iDeal?: PaymentMethodsMetadataIDeal; /** * * @type {PaymentMethodsMetadataMbway} * @memberof PaymentMethodsMetadata */ mbway?: PaymentMethodsMetadataMbway; /** * * @type {PaymentMethodsMetadataMbway} * @memberof PaymentMethodsMetadata */ multibanco?: PaymentMethodsMetadataMbway; /** * * @type {PaymentMethodsMetadataSofort} * @memberof PaymentMethodsMetadata */ sofort?: PaymentMethodsMetadataSofort; /** * * @type {PaymentMethodsMetadataTrustly} * @memberof PaymentMethodsMetadata */ trustly?: PaymentMethodsMetadataTrustly; /** * * @type {PaymentMethodsMetadataSepa} * @memberof PaymentMethodsMetadata */ sepa?: PaymentMethodsMetadataSepa; /** * * @type {PaymentMethodsMetadataKlarna} * @memberof PaymentMethodsMetadata */ klarna?: PaymentMethodsMetadataKlarna; /** * * @type {PaymentMethodsMetadataGiropay} * @memberof PaymentMethodsMetadata */ giropay?: PaymentMethodsMetadataGiropay; /** * * @type {PaymentMethodsMetadataGooglePay} * @memberof PaymentMethodsMetadata */ googlePay?: PaymentMethodsMetadataGooglePay; /** * * @type {PaymentMethodsMetadataApplePay} * @memberof PaymentMethodsMetadata */ applePay?: PaymentMethodsMetadataApplePay; /** * * @type {PaymentMethodsMetadataClickToPay} * @memberof PaymentMethodsMetadata */ clickToPay?: PaymentMethodsMetadataClickToPay; } //#endregion //#region src/model/payment-methods-methods.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * An array of available payment methods for the account or payment. Possible values include: - `alipay` - Alipay - `applePay` - Apple Pay - `bancontact` - Bancontact - `bizum` - Bizum - `blik` - BLIK - `card` - Credit or debit card - `cardPresent` - Card present (physical POS) - `clickToPay` - Click to Pay - `eps` - EPS - `giropay` - Giropay - `googlePay` - Google Pay - `iDeal` - iDEAL - `klarna` - Klarna - `mbway` - MB WAY - `multibanco` - Multibanco - `paypal` - PayPal - `sepa` - SEPA Direct Debit - `sofort` - Sofort - `trustly` - Trustly * @export * @interface PaymentMethodsMethods */ interface PaymentMethodsMethods extends Array {} //#endregion //#region src/model/payment-methods.d.ts /** * * @export * @interface PaymentMethods */ interface PaymentMethods { /** * Has the value `true` if the resource exists in live mode or the value `false` if the resource exists in test mode. * @type {boolean} * @memberof PaymentMethods */ livemode: boolean; /** * * @type {PaymentMethodsMethods} * @memberof PaymentMethods */ paymentMethods: PaymentMethodsMethods; /** * * @type {PaymentMethodsMetadata} * @memberof PaymentMethods */ metadata: PaymentMethodsMetadata; /** * The name of the merchant * @type {string} * @memberof PaymentMethods */ merchantName: string; /** * The URL of the merchant\'s website * @type {string} * @memberof PaymentMethods */ merchantUrl: string; /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof PaymentMethods */ countryCode: string; /** * MONEI Account identifier. * @type {string} * @memberof PaymentMethods */ accountId?: string; /** * The amount of the payment in the smallest currency unit. For example, 10 EUR = 1000 cents. Only present when querying by paymentId. * @type {number} * @memberof PaymentMethods */ amount?: number; /** * Three-letter ISO currency code, in uppercase. Only present when querying by paymentId. * @type {string} * @memberof PaymentMethods */ currency?: string; } //#endregion //#region src/model/payment-refund-reason.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The reason for refunding the Payment. * @export * @enum {string} */ declare const PaymentRefundReason: { readonly DUPLICATED: "duplicated"; readonly FRAUDULENT: "fraudulent"; readonly REQUESTED_BY_CUSTOMER: "requested_by_customer"; }; type PaymentRefundReason = (typeof PaymentRefundReason)[keyof typeof PaymentRefundReason]; //#endregion //#region src/model/pos-auth-token-create200-response.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface PosAuthTokenCreate200Response */ interface PosAuthTokenCreate200Response { /** * RS256-signed JWT token for POS authentication. Valid for 24 hours. * @type {string} * @memberof PosAuthTokenCreate200Response */ token: string; } //#endregion //#region src/model/preview-subscription-update-request.d.ts /** * Send at least one of `amount`, `interval`, `intervalCount` or `nextPaymentAt`. A request that changes none of them is rejected, because there is no difference to price. The figures come from the same calculation the update endpoint runs, and the same rules reject the same requests, so a preview that returns a settlement is one the update can apply. * @export * @interface PreviewSubscriptionUpdateRequest */ interface PreviewSubscriptionUpdateRequest { /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof PreviewSubscriptionUpdateRequest */ amount?: number; /** * * @type {SubscriptionInterval} * @memberof PreviewSubscriptionUpdateRequest */ interval?: SubscriptionInterval; /** * Number of intervals between subscription payments. * @type {number} * @memberof PreviewSubscriptionUpdateRequest */ intervalCount?: number; /** * The date when the next payment will be made. Measured in seconds since the Unix epoch. Send it on an update to move the next charge without changing the price. The date must be in the future and no more than five years ahead, and the subscription must be active or past due with a live schedule. A trialing subscription moves with `trialPeriodEnd` instead, and a paused one has to be resumed first. A pending `skipIntervalCount`, `pauseIntervalCount`, `pauseAtPeriodEnd` or `cancelAtPeriodEnd` blocks the change, because it would turn the charge at the new date into a skipped, paused or cancelled cycle instead of a payment. Clear it in the same request by sending `0`, `null` or `false` for that field. Moving the date on its own settles no money. Combine it with `prorate` to charge or refund the time that moves. * @type {number} * @memberof PreviewSubscriptionUpdateRequest */ nextPaymentAt?: number; } //#endregion //#region src/model/recurring-payment-request.d.ts /** * * @export * @interface RecurringPaymentRequest */ interface RecurringPaymentRequest { /** * An order ID from your system. A unique identifier that can be used to reconcile the payment with your internal system. * @type {string} * @memberof RecurringPaymentRequest */ orderId: string; /** * The amount to collected by this subsequent payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof RecurringPaymentRequest */ amount?: number; /** * Same as the `transactionType` parameter from [create payment](https://docs.monei.com/apis/rest/payments-create/). If not sent, it will default in the same transaction type used in the initial payment. * @type {PaymentTransactionType} * @memberof RecurringPaymentRequest */ transactionType?: PaymentTransactionType; /** * An arbitrary string attached to the payment. Often useful for displaying to users. * @type {string} * @memberof RecurringPaymentRequest */ description?: string; /** * * @type {PaymentCustomer} * @memberof RecurringPaymentRequest */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof RecurringPaymentRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof RecurringPaymentRequest */ shippingDetails?: PaymentShippingDetails; /** * The URL to which a payment result should be sent asynchronously. * @type {string} * @memberof RecurringPaymentRequest */ callbackUrl?: string; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof RecurringPaymentRequest */ metadata?: object; } //#endregion //#region src/model/refund-payment-request.d.ts /** * * @export * @interface RefundPaymentRequest */ interface RefundPaymentRequest { /** * The amount to refund, which must be less than or equal to the original amount. * @type {number} * @memberof RefundPaymentRequest */ amount?: number; /** * * @type {PaymentRefundReason} * @memberof RefundPaymentRequest */ refundReason?: PaymentRefundReason; } //#endregion //#region src/model/register-apple-pay-domain-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface RegisterApplePayDomainRequest */ interface RegisterApplePayDomainRequest { /** * The domain name to register for Apple Pay. * @type {string} * @memberof RegisterApplePayDomainRequest */ domainName: string; } //#endregion //#region src/model/send-payment-link-request.d.ts /** * * @export * @interface SendPaymentLinkRequest */ interface SendPaymentLinkRequest { /** * The customer will receive payment link on this email address. * @type {string} * @memberof SendPaymentLinkRequest */ customerEmail?: string; /** * Phone number in E.164 format. The customer will receive payment link on this phone number. * @type {string} * @memberof SendPaymentLinkRequest */ customerPhone?: string; /** * * @type {PaymentMessageChannel} * @memberof SendPaymentLinkRequest */ channel?: PaymentMessageChannel; /** * * @type {PaymentMessageLanguage} * @memberof SendPaymentLinkRequest */ language?: PaymentMessageLanguage; } //#endregion //#region src/model/send-payment-receipt-request.d.ts /** * * @export * @interface SendPaymentReceiptRequest */ interface SendPaymentReceiptRequest { /** * The customer will receive payment receipt on this email address. * @type {string} * @memberof SendPaymentReceiptRequest */ customerEmail?: string; /** * Phone number in E.164 format. The customer will receive payment receipt link on this phone number. * @type {string} * @memberof SendPaymentReceiptRequest */ customerPhone?: string; /** * * @type {PaymentMessageChannel} * @memberof SendPaymentReceiptRequest */ channel?: PaymentMessageChannel; /** * * @type {PaymentMessageLanguage} * @memberof SendPaymentReceiptRequest */ language?: PaymentMessageLanguage; } //#endregion //#region src/model/send-payment-request-request.d.ts /** * * @export * @interface SendPaymentRequestRequest */ interface SendPaymentRequestRequest { /** * Phone number in E.164 format. The customer will receive payment link on this phone number. * @type {string} * @memberof SendPaymentRequestRequest */ phoneNumber: string; /** * * @type {PaymentMessageLanguage} * @memberof SendPaymentRequestRequest */ language?: PaymentMessageLanguage; } //#endregion //#region src/model/send-subscription-link-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface SendSubscriptionLinkRequest */ interface SendSubscriptionLinkRequest { /** * Customer email to send the subscription link to * @type {string} * @memberof SendSubscriptionLinkRequest */ customerEmail?: string; /** * Customer phone number to send the subscription link to * @type {string} * @memberof SendSubscriptionLinkRequest */ customerPhone?: string; /** * Channel to use for sending the subscription link * @type {string} * @memberof SendSubscriptionLinkRequest */ channel?: SendSubscriptionLinkRequestChannelEnum; /** * Language to use for the subscription link message * @type {string} * @memberof SendSubscriptionLinkRequest */ language?: string; } declare const SendSubscriptionLinkRequestChannelEnum: { readonly EMAIL: "EMAIL"; readonly WHATSAPP: "WHATSAPP"; readonly SMS: "SMS"; }; type SendSubscriptionLinkRequestChannelEnum = (typeof SendSubscriptionLinkRequestChannelEnum)[keyof typeof SendSubscriptionLinkRequestChannelEnum]; //#endregion //#region src/model/send-subscription-status-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface SendSubscriptionStatusRequest */ interface SendSubscriptionStatusRequest { /** * Customer email to send the subscription status to * @type {string} * @memberof SendSubscriptionStatusRequest */ customerEmail?: string; /** * Customer phone number to send the subscription status to * @type {string} * @memberof SendSubscriptionStatusRequest */ customerPhone?: string; /** * Channel to use for sending the subscription status * @type {string} * @memberof SendSubscriptionStatusRequest */ channel?: SendSubscriptionStatusRequestChannelEnum; /** * Language to use for the subscription status message * @type {string} * @memberof SendSubscriptionStatusRequest */ language?: string; } declare const SendSubscriptionStatusRequestChannelEnum: { readonly EMAIL: "EMAIL"; readonly WHATSAPP: "WHATSAPP"; readonly SMS: "SMS"; }; type SendSubscriptionStatusRequestChannelEnum = (typeof SendSubscriptionStatusRequestChannelEnum)[keyof typeof SendSubscriptionStatusRequestChannelEnum]; //#endregion //#region src/model/service-unavailable-error.d.ts /** * @type ServiceUnavailableError * @export */ type ServiceUnavailableError = ApiException$1; //#endregion //#region src/model/subscription-last-payment.d.ts /** * * @export * @interface SubscriptionLastPayment */ interface SubscriptionLastPayment { /** * Unique identifier for the payment. * @type {string} * @memberof SubscriptionLastPayment */ id?: string; /** * * @type {PaymentStatus} * @memberof SubscriptionLastPayment */ status?: PaymentStatus; /** * Payment status code. * @type {string} * @memberof SubscriptionLastPayment */ statusCode?: string; /** * Human readable status message, can be displayed to a user. * @type {string} * @memberof SubscriptionLastPayment */ statusMessage?: string; } //#endregion //#region src/model/subscription-last-proration.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * What the most recent prorated change settled. Present only after a prorated change. * @export * @interface SubscriptionLastProration */ interface SubscriptionLastProration { /** * Unused time credited at the previous price, in the smallest currency unit. * @type {number} * @memberof SubscriptionLastProration */ credit?: number; /** * Time charged at the new price, in the smallest currency unit. An interval change charges the full new price rather than a fraction of it. * @type {number} * @memberof SubscriptionLastProration */ charge?: number; /** * The settled difference, `charge` minus `credit`. A positive value was charged to the saved payment method. A negative value was refunded. * @type {number} * @memberof SubscriptionLastProration */ net?: number; /** * The payment that funds the current period on top of its renewal, and the first source a later refund draws on. Set to the new payment when a prorated change charges. A change that refunds or moves no money keeps whichever payment an earlier prorated charge in this period created, since that money is still what funds the period. Absent when no prorated charge has funded the current period. * @type {string} * @memberof SubscriptionLastProration */ paymentId?: string; } //#endregion //#region src/model/subscription-payment-method.d.ts /** * Details about the payment method at the time of the transaction. * @export * @interface SubscriptionPaymentMethod */ interface SubscriptionPaymentMethod { /** * Subscription method type. * @type {string} * @memberof SubscriptionPaymentMethod */ method?: SubscriptionPaymentMethodMethodEnum; /** * * @type {PaymentPaymentMethodCard} * @memberof SubscriptionPaymentMethod */ card?: PaymentPaymentMethodCard; /** * * @type {PaymentPaymentMethodBizum} * @memberof SubscriptionPaymentMethod */ bizum?: PaymentPaymentMethodBizum; } declare const SubscriptionPaymentMethodMethodEnum: { readonly CARD: "card"; readonly BIZUM: "bizum"; }; type SubscriptionPaymentMethodMethodEnum = (typeof SubscriptionPaymentMethodMethodEnum)[keyof typeof SubscriptionPaymentMethodMethodEnum]; //#endregion //#region src/model/subscription-status.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * The status of the subscription. * @export * @enum {string} */ declare const SubscriptionStatus: { readonly PENDING: "PENDING"; readonly EXPIRED: "EXPIRED"; readonly TRIALING: "TRIALING"; readonly ACTIVE: "ACTIVE"; readonly PAST_DUE: "PAST_DUE"; readonly PAUSED: "PAUSED"; readonly CANCELED: "CANCELED"; }; type SubscriptionStatus = (typeof SubscriptionStatus)[keyof typeof SubscriptionStatus]; //#endregion //#region src/model/subscription.d.ts /** * * @export * @interface Subscription */ interface Subscription { /** * Unique identifier for the subscription. * @type {string} * @memberof Subscription */ id: string; /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof Subscription */ amount: number; /** * Three-letter [ISO currency code](https://en.wikipedia.org/wiki/ISO_4217), in uppercase. Must be a supported currency. * @type {string} * @memberof Subscription */ currency?: string; /** * * @type {SubscriptionPaymentMethods} * @memberof Subscription */ allowedPaymentMethods?: SubscriptionPaymentMethods; /** * An arbitrary string attached to the subscription. Often useful for displaying to users. * @type {string} * @memberof Subscription */ description?: string; /** * MONEI Account identifier. * @type {string} * @memberof Subscription */ accountId: string; /** * Has the value `true` if the resource exists in live mode or the value `false` if the resource exists in test mode. * @type {boolean} * @memberof Subscription */ livemode: boolean; /** * * @type {SubscriptionStatus} * @memberof Subscription */ status: SubscriptionStatus; /** * The [customer](https://docs.monei.com/apis/rest/customers-create/) this subscription belongs to. Linking a subscription to a customer turns on **renewal failover**: when a renewal is declined by the issuing bank, MONEI retries it against up to two of the customer\'s other saved payment methods within the same attempt, before the subscription goes `PAST_DUE`. One declined renewal can therefore produce up to three charge attempts on different cards. If one succeeds the subscription continues and moves to that payment method. * @type {string} * @memberof Subscription */ customerId?: string; /** * * @type {PaymentCustomer} * @memberof Subscription */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof Subscription */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof Subscription */ shippingDetails?: PaymentShippingDetails; /** * * @type {SubscriptionInterval} * @memberof Subscription */ interval: SubscriptionInterval; /** * Number of intervals between subscription payments. * @type {number} * @memberof Subscription */ intervalCount: number; /** * Number of intervals when subscription will be paused before it activates again. * @type {number} * @memberof Subscription */ pauseIntervalCount?: number; /** * The number of intervals during which the subscription billing cycle will be skipped without altering the subscription status. This is useful when payment for a specific period is received through different methods. * @type {number} * @memberof Subscription */ skipIntervalCount?: number; /** * An order ID from your system. A unique identifier that can be used to reconcile the payment with your internal system. * @type {string} * @memberof Subscription */ lastOrderId?: string; /** * * @type {SubscriptionLastPayment} * @memberof Subscription */ lastPayment?: SubscriptionLastPayment; /** * * @type {SubscriptionPaymentMethod} * @memberof Subscription */ paymentMethod?: SubscriptionPaymentMethod; /** * The start date of the current subscription period. Measured in seconds since the Unix epoch. * @type {number} * @memberof Subscription */ currentPeriodStart?: number; /** * The end date of the current subscription period. Measured in seconds since the Unix epoch. * @type {number} * @memberof Subscription */ currentPeriodEnd?: number; /** * The end date of the trial period. Measured in seconds since the Unix epoch. * @type {number} * @memberof Subscription */ trialPeriodEnd?: number; /** * Amount charged on each billing cycle during the trial period, as a positive integer in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). Once the trial ends, the subscription\'s regular `amount` is charged. Use this to offer discounted introductory pricing. Can be combined with `trialIntervalCount` (charged each cycle for that many cycles) or with `trialPeriodDays`/`trialPeriodEnd` (charged once at activation, covering the subscription until the trial period ends). * @type {number} * @memberof Subscription */ trialAmount?: number; /** * Number of billing cycles charged at `trialAmount` before the regular `amount` applies, using the subscription\'s `interval` (e.g., `interval` of `month` with a `trialIntervalCount` of 3 charges the `trialAmount` for the first 3 months). Requires `trialAmount` and cannot be combined with `trialPeriodDays` or `trialPeriodEnd`. In responses, the value decrements after each trial payment and is removed once the trial ends. * @type {number} * @memberof Subscription */ trialIntervalCount?: number; /** * The date when the next payment will be made. Measured in seconds since the Unix epoch. Send it on an update to move the next charge without changing the price. The date must be in the future and no more than five years ahead, and the subscription must be active or past due with a live schedule. A trialing subscription moves with `trialPeriodEnd` instead, and a paused one has to be resumed first. A pending `skipIntervalCount`, `pauseIntervalCount`, `pauseAtPeriodEnd` or `cancelAtPeriodEnd` blocks the change, because it would turn the charge at the new date into a skipped, paused or cancelled cycle instead of a payment. Clear it in the same request by sending `0`, `null` or `false` for that field. Moving the date on its own settles no money. Combine it with `prorate` to charge or refund the time that moves. * @type {number} * @memberof Subscription */ nextPaymentAt?: number; /** * Number of retries left for the subscription. * @type {number} * @memberof Subscription */ retryCount?: number; /** * * @type {SubscriptionRetrySchedule} * @memberof Subscription */ retrySchedule?: SubscriptionRetrySchedule; /** * If true, the subscription will be canceled at the end of the current period. * @type {boolean} * @memberof Subscription */ cancelAtPeriodEnd?: boolean; /** * If true, the subscription will be paused at the end of the current period. * @type {boolean} * @memberof Subscription */ pauseAtPeriodEnd?: boolean; /** * The date of the most recent prorated change. A period can be prorated more than once, so this moves with each settlement rather than being set once per period. * @type {number} * @memberof Subscription */ lastProrationAt?: number; /** * * @type {SubscriptionLastProration} * @memberof Subscription */ lastProration?: SubscriptionLastProration; /** * * @type {PaymentTraceDetails} * @memberof Subscription */ traceDetails?: PaymentTraceDetails; /** * A permanent identifier that refers to the initial payment of a sequence of payments. This value needs to be sent in the path for `RECURRING` payments. * @type {string} * @memberof Subscription */ sequenceId?: string; /** * The URL will be called each time subscription status changes. You will receive a subscription object in the body of the request. * @type {string} * @memberof Subscription */ callbackUrl?: string; /** * The URL will be called each time subscription creates a new payments. You will receive the payment object in the body of the request. * @type {string} * @memberof Subscription */ paymentCallbackUrl?: string; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof Subscription */ metadata?: object; /** * Time at which the resource was created. Measured in seconds since the Unix epoch. * @type {number} * @memberof Subscription */ createdAt?: number; /** * Time at which the resource updated last time. Measured in seconds since the Unix epoch. * @type {number} * @memberof Subscription */ updatedAt?: number; } //#endregion //#region src/model/subscription-payment-method-card.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * Details about the card used as payment method at the time of the transaction. * @export * @interface SubscriptionPaymentMethodCard */ interface SubscriptionPaymentMethodCard { /** * Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)). * @type {string} * @memberof SubscriptionPaymentMethodCard */ country?: string; /** * Card brand. * @type {string} * @memberof SubscriptionPaymentMethodCard */ brand?: SubscriptionPaymentMethodCardBrandEnum; /** * Card type `debit` or `credit`. * @type {string} * @memberof SubscriptionPaymentMethodCard */ type?: SubscriptionPaymentMethodCardTypeEnum; /** * Wether this transaction used 3D Secure authentication. * @type {boolean} * @memberof SubscriptionPaymentMethodCard */ threeDSecure?: boolean; /** * The protocol version of the 3DS challenge. * @type {string} * @memberof SubscriptionPaymentMethodCard */ threeDSecureVersion?: string; /** * Time at which the card will expire. Measured in seconds since the Unix epoch. * @type {number} * @memberof SubscriptionPaymentMethodCard */ expiration?: number; /** * The last four digits of the card. * @type {string} * @memberof SubscriptionPaymentMethodCard */ last4?: string; /** * Unique identifier for the card number. Used to detect duplicate payment methods across customers. Not present for tokenized cards. * @type {string} * @memberof SubscriptionPaymentMethodCard */ fingerprint?: string; } declare const SubscriptionPaymentMethodCardBrandEnum: { readonly VISA: "visa"; readonly MASTERCARD: "mastercard"; readonly DINERS: "diners"; readonly AMEX: "amex"; readonly JCB: "jcb"; readonly UNIONPAY: "unionpay"; readonly UNKNOWN: "unknown"; }; type SubscriptionPaymentMethodCardBrandEnum = (typeof SubscriptionPaymentMethodCardBrandEnum)[keyof typeof SubscriptionPaymentMethodCardBrandEnum]; declare const SubscriptionPaymentMethodCardTypeEnum: { readonly DEBIT: "debit"; readonly CREDIT: "credit"; }; type SubscriptionPaymentMethodCardTypeEnum = (typeof SubscriptionPaymentMethodCardTypeEnum)[keyof typeof SubscriptionPaymentMethodCardTypeEnum]; //#endregion //#region src/model/subscription-update-preview.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface SubscriptionUpdatePreview */ interface SubscriptionUpdatePreview { /** * Unused time that would be credited at the current price, in the smallest currency unit. * @type {number} * @memberof SubscriptionUpdatePreview */ credit: number; /** * Time that would be charged at the new price, in the smallest currency unit. An interval change charges the full new price rather than a fraction of it. * @type {number} * @memberof SubscriptionUpdatePreview */ charge: number; /** * The computed difference, `charge` minus `credit`. This is the amount that would move, in full: a refund the period\'s funding cannot cover is rejected rather than reduced, so a preview that returns a settlement returns the whole of it. * @type {number} * @memberof SubscriptionUpdatePreview */ net: number; /** * Whether the difference would be charged, refunded, or neither. `none` means the difference rounds to zero and no money moves. * @type {string} * @memberof SubscriptionUpdatePreview */ direction: SubscriptionUpdatePreviewDirectionEnum; /** * Always `false`. A refund is now either covered in full or the change is rejected, so there is no partial refund for this to report. Do not branch on it. * @type {boolean} * @memberof SubscriptionUpdatePreview * @deprecated */ refundCapped: boolean; /** * The date the change would take effect. * @type {number} * @memberof SubscriptionUpdatePreview */ effectiveAt: number; /** * The end date of the current subscription period. Measured in seconds since the Unix epoch. * @type {number} * @memberof SubscriptionUpdatePreview */ currentPeriodEnd: number; /** * The end of the billing period the change would start. Present only when the change resets the period: an `interval` or `intervalCount` change, which restarts it from now, or a `nextPaymentAt` change, which moves the end to the new date. * @type {number} * @memberof SubscriptionUpdatePreview */ newPeriodEnd?: number; /** * When the next payment would be taken. Present on the same changes as `newPeriodEnd`, and equal to it. * @type {number} * @memberof SubscriptionUpdatePreview */ nextPaymentAt?: number; } declare const SubscriptionUpdatePreviewDirectionEnum: { readonly CHARGE: "charge"; readonly REFUND: "refund"; readonly NONE: "none"; }; type SubscriptionUpdatePreviewDirectionEnum = (typeof SubscriptionUpdatePreviewDirectionEnum)[keyof typeof SubscriptionUpdatePreviewDirectionEnum]; //#endregion //#region src/model/unauthorized-error.d.ts /** * @type UnauthorizedError * @export */ type UnauthorizedError = ApiException$1; //#endregion //#region src/model/unprocessable-entity-error.d.ts /** * @type UnprocessableEntityError * @export */ type UnprocessableEntityError = ApiException$1; //#endregion //#region src/model/update-apple-pay-certificate-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface UpdateApplePayCertificateRequest */ interface UpdateApplePayCertificateRequest { /** * Set to true to enable or false to disable the certificate. * @type {boolean} * @memberof UpdateApplePayCertificateRequest */ active: boolean; } //#endregion //#region src/model/update-customer-request.d.ts /** * Only the fields you send are changed. Omitted fields keep their current value. * @export * @interface UpdateCustomerRequest */ interface UpdateCustomerRequest { /** * The customer\'s email address. * @type {string} * @memberof UpdateCustomerRequest */ email?: string; /** * The customer\'s full name or business name. * @type {string} * @memberof UpdateCustomerRequest */ name?: string; /** * The customer\'s phone number in E.164 format. * @type {string} * @memberof UpdateCustomerRequest */ phone?: string; /** * * @type {PaymentBillingDetails} * @memberof UpdateCustomerRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof UpdateCustomerRequest */ shippingDetails?: PaymentShippingDetails; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof UpdateCustomerRequest */ metadata?: object; /** * The payment method charged when a payment sets `useDefaultPaymentMethod`. MONEI fills this only while it is empty: the first reusable payment method the customer saves becomes the default, and a value you set here is kept. Deleting that payment method clears the field, so the next reusable one the customer saves becomes the new default. It must be the ID of a payment method this customer already owns, and one that can be reused for future payments. * @type {string} * @memberof UpdateCustomerRequest */ defaultTokenId?: string; } //#endregion //#region src/model/update-subscription-request.d.ts /** * * @export * @interface UpdateSubscriptionRequest */ interface UpdateSubscriptionRequest { /** * Amount intended to be collected by this payment. A positive integer representing how much to charge in the smallest currency unit (e.g., 100 cents to charge 1.00 USD). * @type {number} * @memberof UpdateSubscriptionRequest */ amount?: number; /** * * @type {SubscriptionInterval} * @memberof UpdateSubscriptionRequest */ interval?: SubscriptionInterval; /** * Number of intervals between subscription payments. * @type {number} * @memberof UpdateSubscriptionRequest */ intervalCount?: number; /** * * @type {SubscriptionPaymentMethods} * @memberof UpdateSubscriptionRequest */ allowedPaymentMethods?: SubscriptionPaymentMethods; /** * An arbitrary string attached to the subscription. Often useful for displaying to users. * @type {string} * @memberof UpdateSubscriptionRequest */ description?: string; /** * The [customer](https://docs.monei.com/apis/rest/customers-create/) this subscription belongs to. Linking a subscription to a customer turns on **renewal failover**: when a renewal is declined by the issuing bank, MONEI retries it against up to two of the customer\'s other saved payment methods within the same attempt, before the subscription goes `PAST_DUE`. One declined renewal can therefore produce up to three charge attempts on different cards. If one succeeds the subscription continues and moves to that payment method. * @type {string} * @memberof UpdateSubscriptionRequest */ customerId?: string; /** * * @type {PaymentCustomer} * @memberof UpdateSubscriptionRequest */ customer?: PaymentCustomer; /** * * @type {PaymentBillingDetails} * @memberof UpdateSubscriptionRequest */ billingDetails?: PaymentBillingDetails; /** * * @type {PaymentShippingDetails} * @memberof UpdateSubscriptionRequest */ shippingDetails?: PaymentShippingDetails; /** * The end date of the trial period. Measured in seconds since the Unix epoch. * @type {number} * @memberof UpdateSubscriptionRequest */ trialPeriodEnd?: number; /** * The URL will be called each time subscription status changes. You will receive a subscription object in the body of the request. * @type {string} * @memberof UpdateSubscriptionRequest */ callbackUrl?: string; /** * The URL will be called each time subscription creates a new payments. You will receive the payment object in the body of the request. * @type {string} * @memberof UpdateSubscriptionRequest */ paymentCallbackUrl?: string; /** * If true, the subscription will be paused at the end of the current period. * @type {boolean} * @memberof UpdateSubscriptionRequest */ pauseAtPeriodEnd?: boolean; /** * If true, the subscription will be canceled at the end of the current period. * @type {boolean} * @memberof UpdateSubscriptionRequest */ cancelAtPeriodEnd?: boolean; /** * Number of intervals when subscription will be paused before it activates again. * @type {number} * @memberof UpdateSubscriptionRequest */ pauseIntervalCount?: number; /** * The number of intervals during which the subscription billing cycle will be skipped without altering the subscription status. This is useful when payment for a specific period is received through different methods. * @type {number} * @memberof UpdateSubscriptionRequest */ skipIntervalCount?: number; /** * * @type {SubscriptionRetrySchedule} * @memberof UpdateSubscriptionRequest */ retrySchedule?: SubscriptionRetrySchedule; /** * Settle the price difference immediately when you change `amount`, `interval`, `intervalCount` or `nextPaymentAt` mid-period. Unused time is credited at the current price. An `amount` change charges the remaining time at the new price and keeps the billing period. An `interval` or `intervalCount` change charges the full new price and restarts the period from now. A `nextPaymentAt` change charges the time from now until the new date and moves the period end to it, so a later date charges and an earlier one refunds. A positive difference is charged to the saved payment method. A negative difference is refunded against the payments that funded the current period, newest money first: the charge taken by the most recent prorated change in this period, then the payment that renewed it. A refund those together cannot cover is rejected before any of it moves, so a change is either settled in full or not at all. The same rule applies to the preview, which returns the same rejection rather than quoting a settlement the update would refuse. A billing period can be prorated more than once. Two limits apply: - While a settlement is in flight the next one is rejected, and the guard has one-second granularity, so a repeat inside the same second as the previous change is rejected too. Retry after at least a second. - A period whose length no longer matches the plan\'s interval cannot be prorated at all until the next renewal restores it. A `nextPaymentAt` change resizes the period by definition, and an `interval` or `intervalCount` change without `prorate` leaves the old period in place under the new interval. Either one closes the period to further prorated changes, because the credit and the charge are both fractions of the stored period and would divide by a length the price was never set against. Accepted on active and trialing subscriptions only. On a trialing subscription the fields change and no money moves, because there is no paid time to credit. Any other status is rejected. You cannot combine `prorate` with `trialPeriodEnd`, `cancelAtPeriodEnd`, `pauseAtPeriodEnd`, `pauseIntervalCount` or `skipIntervalCount`. On an active subscription, these are rejected too: - A subscription that pays with Bizum, or whose `allowedPaymentMethods` include it. - `prorate` without a change to `amount`, `interval`, `intervalCount` or `nextPaymentAt`, because there is nothing to settle. - An `interval` or `intervalCount` change while `cancelAtPeriodEnd`, `pauseAtPeriodEnd` or `skipIntervalCount` is pending. An `amount` change is accepted. - A change that would refund, when refunds are disabled for the account. A `nextPaymentAt` change has its own rules: - Only on an active subscription. A prorated `nextPaymentAt` change is rejected on a trialing one, where nothing would settle, and on a past due one, which a plain change accepts. - Not together with `interval` or `intervalCount`. Those already restart the period from now, so the new period end would have two answers. - The charge is capped at 24 billing periods. A date far enough ahead to exceed that is rejected rather than charged. - The clearing value described on `nextPaymentAt` is accepted on an anchor move and on nothing else. Any other prorated change still rejects those fields outright. * @type {boolean} * @memberof UpdateSubscriptionRequest */ prorate?: boolean; /** * The date when the next payment will be made. Measured in seconds since the Unix epoch. Send it on an update to move the next charge without changing the price. The date must be in the future and no more than five years ahead, and the subscription must be active or past due with a live schedule. A trialing subscription moves with `trialPeriodEnd` instead, and a paused one has to be resumed first. A pending `skipIntervalCount`, `pauseIntervalCount`, `pauseAtPeriodEnd` or `cancelAtPeriodEnd` blocks the change, because it would turn the charge at the new date into a skipped, paused or cancelled cycle instead of a payment. Clear it in the same request by sending `0`, `null` or `false` for that field. Moving the date on its own settles no money. Combine it with `prorate` to charge or refund the time that moves. * @type {number} * @memberof UpdateSubscriptionRequest */ nextPaymentAt?: number; /** * A set of key-value pairs that you can attach to a resource. This can be useful for storing additional information about the resource in a structured format. * @type {object} * @memberof UpdateSubscriptionRequest */ metadata?: object; } //#endregion //#region src/model/validate-bizum-phone-request.d.ts /** * MONEI API v1 * The MONEI API is organized around REST principles. Our API is designed to be intuitive and developer-friendly. ### Base URL All API requests should be made to: ``` https://api.monei.com/v1 ``` ### Environment MONEI provides two environments: - **Test Environment**: For development and testing without processing real payments - **Live Environment**: For processing real transactions in production ### Client Libraries We provide official SDKs to simplify integration: - [PHP SDK](https://github.com/MONEI/monei-php-sdk) - [Python SDK](https://github.com/MONEI/monei-python-sdk) - [Node.js SDK](https://github.com/MONEI/monei-node-sdk) - [Postman Collection](https://postman.monei.com/) Our SDKs handle authentication, error handling, and request formatting automatically. You can download the OpenAPI specification from the https://js.monei.com/api/v1/openapi.json and generate your own client library using the [OpenAPI Generator](https://openapi-generator.tech/). ### Important Requirements - All API requests must be made over HTTPS - If you are not using our official SDKs, you **must provide a valid `User-Agent` header** with each request - Requests without proper authentication will return a `401 Unauthorized` error ### Error Handling The API returns consistent error codes and messages to help you troubleshoot issues. Each response includes a `statusCode` attribute indicating the outcome of your request. ### Rate Limits The API implements rate limiting to ensure stability. If you exceed the limits, requests will return a `429 Too Many Requests` status code. * * The version of the OpenAPI document: 1.12.3 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ /** * * @export * @interface ValidateBizumPhoneRequest */ interface ValidateBizumPhoneRequest { /** * MONEI Account identifier. * @type {string} * @memberof ValidateBizumPhoneRequest */ accountId: string; /** * Unique identifier for the payment. * @type {string} * @memberof ValidateBizumPhoneRequest */ paymentId?: string; /** * Phone number in E.164 format. * @type {string} * @memberof ValidateBizumPhoneRequest */ phoneNumber: string; } //#endregion //#region src/api/apple-pay-certificate-api.d.ts /** * ApplePayCertificateApi - axios parameter creator * @export */ declare const ApplePayCertificateApiAxiosParamCreator: (configuration?: Configuration) => { /** * Activates an Apple Pay certificate by uploading the signed certificate from Apple. After creating a certificate in the Apple Developer Portal using your CSR, download the signed certificate and upload it here to activate payment processing. ## Activation process 1. Ensure you have downloaded the signed certificate (`.cer` file) from Apple Developer Portal. 2. Convert the certificate to base64: ```bash base64 -i apple_pay.cer ``` 3. Call this endpoint with the base64-encoded certificate in the `cert` field. ## Validation The certificate is validated to ensure: - It matches the private key generated when creating the CSR - It has a valid expiration date Once activated, the certificate becomes available for decrypting Apple Pay payment tokens in your iOS app. ## Notes - A certificate can only be activated once. - After successful activation, the CSR is no longer returned in responses. - The certificate\'s expiration date is returned in the `expireAt` field once activated. * @summary Activate Certificate * @param {string} id The unique identifier of the certificate. * @param {ActivateApplePayCertificateRequest} activateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate: (id: string, activateApplePayCertificateRequest: ActivateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Creates a new Apple Pay certificate by generating a Certificate Signing Request (CSR). Use this endpoint to start the certificate creation process for accepting Apple Pay in your iOS app. ## Setup workflow 1. **Call this endpoint** to generate a CSR. The response includes the `csr` field in base64 format. 2. **Decode the CSR** and save it as a `.certSigningRequest` file: ```bash echo \"CSR_VALUE\" | base64 -d > apple_pay.certSigningRequest ``` 3. **Go to [Apple Developer Portal](https://developer.apple.com/account/resources/certificates/list)**: - Navigate to Certificates, Identifiers & Profiles - Select your Merchant ID under Identifiers - In the \"Apple Pay Payment Processing Certificate\" section, click \"Create Certificate\" - Upload the `.certSigningRequest` file from step 2 - Download the signed certificate (`.cer` file) 4. **Convert the certificate to base64**: ```bash base64 -i apple_pay.cer ``` 5. **Activate the certificate** using the [Activate Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-activate/) endpoint with the base64 value. ## Important notes - **CSRs expire after 24 hours.** Complete the certificate creation in Apple Developer Portal within this window, or generate a new CSR. - Each CSR can only be used once. If you need a new certificate, create a new CSR. - The private key is securely generated and stored by MONEI. You never need to handle private keys directly. - You must be enrolled in the [Apple Developer Program](https://developer.apple.com/programs/) to create certificates. - The CSR is cleared from the response after the certificate is activated. * @summary Create Certificate * @param {*} [options] Override http request option. * @throws {RequiredError} */ create: (options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieves a specific Apple Pay certificate by its ID. Returns the certificate object with its current status, CSR (if not yet activated), and expiration date (if activated). * @summary Get Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ get: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieves all Apple Pay certificates for your account. Returns an array of certificate objects, including both active and inactive certificates. Use this to view all certificates and their status. * @summary List Certificates * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAll: (options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Deletes an Apple Pay certificate. This permanently removes the certificate and its associated private key. The certificate will no longer be available for payment processing. **Warning**: This action cannot be undone. If you only want to temporarily disable a certificate, use the [Update Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-update/) endpoint instead. * @summary Delete Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ remove: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Updates an Apple Pay certificate\'s active status. Use this endpoint to enable or disable a certificate. Disabling a certificate prevents it from being used for payment token decryption while keeping it available for future use. * @summary Update Certificate * @param {string} id The unique identifier of the certificate. * @param {UpdateApplePayCertificateRequest} updateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update: (id: string, updateApplePayCertificateRequest: UpdateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * ApplePayCertificateApi - functional programming interface * @export */ declare const ApplePayCertificateApiFp: (configuration?: Configuration) => { /** * Activates an Apple Pay certificate by uploading the signed certificate from Apple. After creating a certificate in the Apple Developer Portal using your CSR, download the signed certificate and upload it here to activate payment processing. ## Activation process 1. Ensure you have downloaded the signed certificate (`.cer` file) from Apple Developer Portal. 2. Convert the certificate to base64: ```bash base64 -i apple_pay.cer ``` 3. Call this endpoint with the base64-encoded certificate in the `cert` field. ## Validation The certificate is validated to ensure: - It matches the private key generated when creating the CSR - It has a valid expiration date Once activated, the certificate becomes available for decrypting Apple Pay payment tokens in your iOS app. ## Notes - A certificate can only be activated once. - After successful activation, the CSR is no longer returned in responses. - The certificate\'s expiration date is returned in the `expireAt` field once activated. * @summary Activate Certificate * @param {string} id The unique identifier of the certificate. * @param {ActivateApplePayCertificateRequest} activateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate(id: string, activateApplePayCertificateRequest: ActivateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Creates a new Apple Pay certificate by generating a Certificate Signing Request (CSR). Use this endpoint to start the certificate creation process for accepting Apple Pay in your iOS app. ## Setup workflow 1. **Call this endpoint** to generate a CSR. The response includes the `csr` field in base64 format. 2. **Decode the CSR** and save it as a `.certSigningRequest` file: ```bash echo \"CSR_VALUE\" | base64 -d > apple_pay.certSigningRequest ``` 3. **Go to [Apple Developer Portal](https://developer.apple.com/account/resources/certificates/list)**: - Navigate to Certificates, Identifiers & Profiles - Select your Merchant ID under Identifiers - In the \"Apple Pay Payment Processing Certificate\" section, click \"Create Certificate\" - Upload the `.certSigningRequest` file from step 2 - Download the signed certificate (`.cer` file) 4. **Convert the certificate to base64**: ```bash base64 -i apple_pay.cer ``` 5. **Activate the certificate** using the [Activate Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-activate/) endpoint with the base64 value. ## Important notes - **CSRs expire after 24 hours.** Complete the certificate creation in Apple Developer Portal within this window, or generate a new CSR. - Each CSR can only be used once. If you need a new certificate, create a new CSR. - The private key is securely generated and stored by MONEI. You never need to handle private keys directly. - You must be enrolled in the [Apple Developer Program](https://developer.apple.com/programs/) to create certificates. - The CSR is cleared from the response after the certificate is activated. * @summary Create Certificate * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieves a specific Apple Pay certificate by its ID. Returns the certificate object with its current status, CSR (if not yet activated), and expiration date (if activated). * @summary Get Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieves all Apple Pay certificates for your account. Returns an array of certificate objects, including both active and inactive certificates. Use this to view all certificates and their status. * @summary List Certificates * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAll(options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>>; /** * Deletes an Apple Pay certificate. This permanently removes the certificate and its associated private key. The certificate will no longer be available for payment processing. **Warning**: This action cannot be undone. If you only want to temporarily disable a certificate, use the [Update Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-update/) endpoint instead. * @summary Delete Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ remove(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Updates an Apple Pay certificate\'s active status. Use this endpoint to enable or disable a certificate. Disabling a certificate prevents it from being used for payment token decryption while keeping it available for future use. * @summary Update Certificate * @param {string} id The unique identifier of the certificate. * @param {UpdateApplePayCertificateRequest} updateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateApplePayCertificateRequest: UpdateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * ApplePayCertificateApi - factory interface * @export */ declare const ApplePayCertificateApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Activates an Apple Pay certificate by uploading the signed certificate from Apple. After creating a certificate in the Apple Developer Portal using your CSR, download the signed certificate and upload it here to activate payment processing. ## Activation process 1. Ensure you have downloaded the signed certificate (`.cer` file) from Apple Developer Portal. 2. Convert the certificate to base64: ```bash base64 -i apple_pay.cer ``` 3. Call this endpoint with the base64-encoded certificate in the `cert` field. ## Validation The certificate is validated to ensure: - It matches the private key generated when creating the CSR - It has a valid expiration date Once activated, the certificate becomes available for decrypting Apple Pay payment tokens in your iOS app. ## Notes - A certificate can only be activated once. - After successful activation, the CSR is no longer returned in responses. - The certificate\'s expiration date is returned in the `expireAt` field once activated. * @summary Activate Certificate * @param {string} id The unique identifier of the certificate. * @param {ActivateApplePayCertificateRequest} activateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate(id: string, activateApplePayCertificateRequest: ActivateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Creates a new Apple Pay certificate by generating a Certificate Signing Request (CSR). Use this endpoint to start the certificate creation process for accepting Apple Pay in your iOS app. ## Setup workflow 1. **Call this endpoint** to generate a CSR. The response includes the `csr` field in base64 format. 2. **Decode the CSR** and save it as a `.certSigningRequest` file: ```bash echo \"CSR_VALUE\" | base64 -d > apple_pay.certSigningRequest ``` 3. **Go to [Apple Developer Portal](https://developer.apple.com/account/resources/certificates/list)**: - Navigate to Certificates, Identifiers & Profiles - Select your Merchant ID under Identifiers - In the \"Apple Pay Payment Processing Certificate\" section, click \"Create Certificate\" - Upload the `.certSigningRequest` file from step 2 - Download the signed certificate (`.cer` file) 4. **Convert the certificate to base64**: ```bash base64 -i apple_pay.cer ``` 5. **Activate the certificate** using the [Activate Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-activate/) endpoint with the base64 value. ## Important notes - **CSRs expire after 24 hours.** Complete the certificate creation in Apple Developer Portal within this window, or generate a new CSR. - Each CSR can only be used once. If you need a new certificate, create a new CSR. - The private key is securely generated and stored by MONEI. You never need to handle private keys directly. - You must be enrolled in the [Apple Developer Program](https://developer.apple.com/programs/) to create certificates. - The CSR is cleared from the response after the certificate is activated. * @summary Create Certificate * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieves a specific Apple Pay certificate by its ID. Returns the certificate object with its current status, CSR (if not yet activated), and expiration date (if activated). * @summary Get Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieves all Apple Pay certificates for your account. Returns an array of certificate objects, including both active and inactive certificates. Use this to view all certificates and their status. * @summary List Certificates * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAll(options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise>; /** * Deletes an Apple Pay certificate. This permanently removes the certificate and its associated private key. The certificate will no longer be available for payment processing. **Warning**: This action cannot be undone. If you only want to temporarily disable a certificate, use the [Update Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-update/) endpoint instead. * @summary Delete Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} */ remove(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Updates an Apple Pay certificate\'s active status. Use this endpoint to enable or disable a certificate. Disabling a certificate prevents it from being used for payment token decryption while keeping it available for future use. * @summary Update Certificate * @param {string} id The unique identifier of the certificate. * @param {UpdateApplePayCertificateRequest} updateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateApplePayCertificateRequest: UpdateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * ApplePayCertificateApi - object-oriented interface * @export * @class ApplePayCertificateApi * @extends {BaseAPI} */ declare class ApplePayCertificateApi extends BaseAPI { /** * Activates an Apple Pay certificate by uploading the signed certificate from Apple. After creating a certificate in the Apple Developer Portal using your CSR, download the signed certificate and upload it here to activate payment processing. ## Activation process 1. Ensure you have downloaded the signed certificate (`.cer` file) from Apple Developer Portal. 2. Convert the certificate to base64: ```bash base64 -i apple_pay.cer ``` 3. Call this endpoint with the base64-encoded certificate in the `cert` field. ## Validation The certificate is validated to ensure: - It matches the private key generated when creating the CSR - It has a valid expiration date Once activated, the certificate becomes available for decrypting Apple Pay payment tokens in your iOS app. ## Notes - A certificate can only be activated once. - After successful activation, the CSR is no longer returned in responses. - The certificate\'s expiration date is returned in the `expireAt` field once activated. * @summary Activate Certificate * @param {string} id The unique identifier of the certificate. * @param {ActivateApplePayCertificateRequest} activateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ activate(id: string, activateApplePayCertificateRequest: ActivateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Creates a new Apple Pay certificate by generating a Certificate Signing Request (CSR). Use this endpoint to start the certificate creation process for accepting Apple Pay in your iOS app. ## Setup workflow 1. **Call this endpoint** to generate a CSR. The response includes the `csr` field in base64 format. 2. **Decode the CSR** and save it as a `.certSigningRequest` file: ```bash echo \"CSR_VALUE\" | base64 -d > apple_pay.certSigningRequest ``` 3. **Go to [Apple Developer Portal](https://developer.apple.com/account/resources/certificates/list)**: - Navigate to Certificates, Identifiers & Profiles - Select your Merchant ID under Identifiers - In the \"Apple Pay Payment Processing Certificate\" section, click \"Create Certificate\" - Upload the `.certSigningRequest` file from step 2 - Download the signed certificate (`.cer` file) 4. **Convert the certificate to base64**: ```bash base64 -i apple_pay.cer ``` 5. **Activate the certificate** using the [Activate Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-activate/) endpoint with the base64 value. ## Important notes - **CSRs expire after 24 hours.** Complete the certificate creation in Apple Developer Portal within this window, or generate a new CSR. - Each CSR can only be used once. If you need a new certificate, create a new CSR. - The private key is securely generated and stored by MONEI. You never need to handle private keys directly. - You must be enrolled in the [Apple Developer Program](https://developer.apple.com/programs/) to create certificates. - The CSR is cleared from the response after the certificate is activated. * @summary Create Certificate * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ create(options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieves a specific Apple Pay certificate by its ID. Returns the certificate object with its current status, CSR (if not yet activated), and expiration date (if activated). * @summary Get Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieves all Apple Pay certificates for your account. Returns an array of certificate objects, including both active and inactive certificates. Use this to view all certificates and their status. * @summary List Certificates * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ getAll(options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Deletes an Apple Pay certificate. This permanently removes the certificate and its associated private key. The certificate will no longer be available for payment processing. **Warning**: This action cannot be undone. If you only want to temporarily disable a certificate, use the [Update Certificate](https://docs.monei.com/apis/rest/apple-pay-certificates-update/) endpoint instead. * @summary Delete Certificate * @param {string} id The unique identifier of the certificate. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ remove(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Updates an Apple Pay certificate\'s active status. Use this endpoint to enable or disable a certificate. Disabling a certificate prevents it from being used for payment token decryption while keeping it available for future use. * @summary Update Certificate * @param {string} id The unique identifier of the certificate. * @param {UpdateApplePayCertificateRequest} updateApplePayCertificateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayCertificateApi */ update(id: string, updateApplePayCertificateRequest: UpdateApplePayCertificateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/apple-pay-domain-api.d.ts /** * ApplePayDomainApi - axios parameter creator * @export */ declare const ApplePayDomainApiAxiosParamCreator: (configuration?: Configuration) => { /** * Registers a domain with Apple Pay. This endpoint allows you to register your website domain with Apple Pay, which is required before you can accept Apple Pay payments on your website. The domain must be accessible via HTTPS and have a valid SSL certificate. Before registering, you must download this [domain association file](https://assets.monei.com/apple-pay/apple-developer-merchantid-domain-association/) and host it at `/.well-known/apple-developer-merchantid-domain-association` on your site. For example, if you\'re registering `example.com`, make that file available at `https://example.com/.well-known/apple-developer-merchantid-domain-association`. The file has no extension, which trips up some servers (notably IIS, and any setup that strips or rejects extensionless static files). Make sure the URL returns HTTP 200 with the file\'s raw contents — not a 404, redirect, or HTML page. Serving it as `Content-Type: text/plain` is the safest choice; add an explicit MIME mapping for the extensionless filename if your server needs one. After registration, Apple will verify your domain. Once verified, you can display Apple Pay buttons and process Apple Pay payments on your website. * @summary Register Domain * @param {RegisterApplePayDomainRequest} registerApplePayDomainRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ register: (registerApplePayDomainRequest: RegisterApplePayDomainRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * ApplePayDomainApi - functional programming interface * @export */ declare const ApplePayDomainApiFp: (configuration?: Configuration) => { /** * Registers a domain with Apple Pay. This endpoint allows you to register your website domain with Apple Pay, which is required before you can accept Apple Pay payments on your website. The domain must be accessible via HTTPS and have a valid SSL certificate. Before registering, you must download this [domain association file](https://assets.monei.com/apple-pay/apple-developer-merchantid-domain-association/) and host it at `/.well-known/apple-developer-merchantid-domain-association` on your site. For example, if you\'re registering `example.com`, make that file available at `https://example.com/.well-known/apple-developer-merchantid-domain-association`. The file has no extension, which trips up some servers (notably IIS, and any setup that strips or rejects extensionless static files). Make sure the URL returns HTTP 200 with the file\'s raw contents — not a 404, redirect, or HTML page. Serving it as `Content-Type: text/plain` is the safest choice; add an explicit MIME mapping for the extensionless filename if your server needs one. After registration, Apple will verify your domain. Once verified, you can display Apple Pay buttons and process Apple Pay payments on your website. * @summary Register Domain * @param {RegisterApplePayDomainRequest} registerApplePayDomainRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ register(registerApplePayDomainRequest: RegisterApplePayDomainRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * ApplePayDomainApi - factory interface * @export */ declare const ApplePayDomainApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Registers a domain with Apple Pay. This endpoint allows you to register your website domain with Apple Pay, which is required before you can accept Apple Pay payments on your website. The domain must be accessible via HTTPS and have a valid SSL certificate. Before registering, you must download this [domain association file](https://assets.monei.com/apple-pay/apple-developer-merchantid-domain-association/) and host it at `/.well-known/apple-developer-merchantid-domain-association` on your site. For example, if you\'re registering `example.com`, make that file available at `https://example.com/.well-known/apple-developer-merchantid-domain-association`. The file has no extension, which trips up some servers (notably IIS, and any setup that strips or rejects extensionless static files). Make sure the URL returns HTTP 200 with the file\'s raw contents — not a 404, redirect, or HTML page. Serving it as `Content-Type: text/plain` is the safest choice; add an explicit MIME mapping for the extensionless filename if your server needs one. After registration, Apple will verify your domain. Once verified, you can display Apple Pay buttons and process Apple Pay payments on your website. * @summary Register Domain * @param {RegisterApplePayDomainRequest} registerApplePayDomainRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ register(registerApplePayDomainRequest: RegisterApplePayDomainRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * ApplePayDomainApi - object-oriented interface * @export * @class ApplePayDomainApi * @extends {BaseAPI} */ declare class ApplePayDomainApi extends BaseAPI { /** * Registers a domain with Apple Pay. This endpoint allows you to register your website domain with Apple Pay, which is required before you can accept Apple Pay payments on your website. The domain must be accessible via HTTPS and have a valid SSL certificate. Before registering, you must download this [domain association file](https://assets.monei.com/apple-pay/apple-developer-merchantid-domain-association/) and host it at `/.well-known/apple-developer-merchantid-domain-association` on your site. For example, if you\'re registering `example.com`, make that file available at `https://example.com/.well-known/apple-developer-merchantid-domain-association`. The file has no extension, which trips up some servers (notably IIS, and any setup that strips or rejects extensionless static files). Make sure the URL returns HTTP 200 with the file\'s raw contents — not a 404, redirect, or HTML page. Serving it as `Content-Type: text/plain` is the safest choice; add an explicit MIME mapping for the extensionless filename if your server needs one. After registration, Apple will verify your domain. Once verified, you can display Apple Pay buttons and process Apple Pay payments on your website. * @summary Register Domain * @param {RegisterApplePayDomainRequest} registerApplePayDomainRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof ApplePayDomainApi */ register(registerApplePayDomainRequest: RegisterApplePayDomainRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/bizum-api.d.ts /** * BizumApi - axios parameter creator * @export */ declare const BizumApiAxiosParamCreator: (configuration?: Configuration) => { /** * Validates if a phone number is registered with Bizum. Use this endpoint to check if a customer\'s phone number can be used for Bizum payments before attempting to process a payment. This helps provide a better user experience by preventing failed payment attempts for non-registered numbers. The response will indicate whether the phone number is valid for Bizum payments. * @summary Validate Phone * @param {ValidateBizumPhoneRequest} validateBizumPhoneRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ validatePhone: (validateBizumPhoneRequest: ValidateBizumPhoneRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * BizumApi - functional programming interface * @export */ declare const BizumApiFp: (configuration?: Configuration) => { /** * Validates if a phone number is registered with Bizum. Use this endpoint to check if a customer\'s phone number can be used for Bizum payments before attempting to process a payment. This helps provide a better user experience by preventing failed payment attempts for non-registered numbers. The response will indicate whether the phone number is valid for Bizum payments. * @summary Validate Phone * @param {ValidateBizumPhoneRequest} validateBizumPhoneRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ validatePhone(validateBizumPhoneRequest: ValidateBizumPhoneRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * BizumApi - factory interface * @export */ declare const BizumApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Validates if a phone number is registered with Bizum. Use this endpoint to check if a customer\'s phone number can be used for Bizum payments before attempting to process a payment. This helps provide a better user experience by preventing failed payment attempts for non-registered numbers. The response will indicate whether the phone number is valid for Bizum payments. * @summary Validate Phone * @param {ValidateBizumPhoneRequest} validateBizumPhoneRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ validatePhone(validateBizumPhoneRequest: ValidateBizumPhoneRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * BizumApi - object-oriented interface * @export * @class BizumApi * @extends {BaseAPI} */ declare class BizumApi extends BaseAPI { /** * Validates if a phone number is registered with Bizum. Use this endpoint to check if a customer\'s phone number can be used for Bizum payments before attempting to process a payment. This helps provide a better user experience by preventing failed payment attempts for non-registered numbers. The response will indicate whether the phone number is valid for Bizum payments. * @summary Validate Phone * @param {ValidateBizumPhoneRequest} validateBizumPhoneRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof BizumApi */ validatePhone(validateBizumPhoneRequest: ValidateBizumPhoneRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/customers-api.d.ts /** * CustomersApi - axios parameter creator * @export */ declare const CustomersApiAxiosParamCreator: (configuration?: Configuration) => { /** * Creates a customer. Every field is optional — a customer with no details at all is valid, and useful if you only want somewhere to attach saved payment methods. Pass the returned `id` as `customerId` when you [create a payment](https://docs.monei.com/apis/rest/payments-create/) or a [subscription](https://docs.monei.com/apis/rest/subscriptions-create/) to link it to this buyer. **What linking does**: - A payment saved with `generatePaymentToken` stores its payment method under this customer - The customer\'s details are copied onto the payment at the time it is made. Editing the customer later never rewrites a payment that already happened - A subscription gains renewal failover across the customer\'s other saved payment methods **Best practices**: - Create the customer once, when the buyer first registers with you, and reuse the `id` - Use `metadata` to store your own user identifier, so you can match your records to MONEI\'s * @summary Create Customer * @param {CreateCustomerRequest} createCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create: (createCustomerRequest: CreateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Deletes a customer and every payment method it owns. This is the operation to use for a data-erasure request: the buyer\'s saved payment methods go with the customer, in one call. **Refused while the customer is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` still names this customer. Cancel those subscriptions first. **What is kept**: Payments and charges already made are not deleted. They keep the copy of the customer\'s details taken at the time, because they are a financial record. * @summary Delete Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ delete: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Deletes one of a customer\'s saved payment methods. **Refused while it is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` is charging this payment method. Cancel or move that subscription first. **If it was the default**: Deleting the customer\'s `defaultTokenId` clears it, rather than silently moving the default to another card. While the customer has no default, a payment sending `useDefaultPaymentMethod` is rejected. The field does not stay empty for good: MONEI fills an empty default with the next reusable payment method the customer saves, the same rule that set the first one. Set `defaultTokenId` yourself if you need to choose which. * @summary Delete Payment Method * @param {string} id The customer ID * @param {string} tokenId The payment method ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ deletePaymentMethod: (id: string, tokenId: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieves a customer by its unique ID. Returns the customer\'s contact details, billing and shipping addresses, metadata, and the `defaultTokenId` of the payment method charged when a payment sets `useDefaultPaymentMethod`. The customer\'s saved payment methods are **not** included. Use [List Payment Methods](https://docs.monei.com/apis/rest/customers-list-payment-methods/) for those. A customer belonging to another merchant account is reported as not found. * @summary Get Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Lists the payment methods a customer has saved. Card and account numbers are never returned. Each entry carries only the display details — brand, last four digits, expiry — along with an `id` you can pass as `paymentToken` on a payment. Expired payment methods are left out. **`sequence`**: `sequence: true` marks a payment method saved for merchant-initiated charges, such as subscription renewals. These are the candidates a declined renewal fails over to. `sequence: false` marks one the buyer chose at checkout, which you can charge again with `paymentToken` or set as the customer\'s `defaultTokenId`. * @summary List Payment Methods * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ listPaymentMethods: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Updates a customer. Only the fields you send are changed. **Changing the default payment method**: Set `defaultTokenId` to the ID of a payment method this customer already owns. It must be one that can be reused for future payments — a payment method saved for a single use is rejected. MONEI only ever fills a default that is empty, so a value you set here is kept. Deleting that payment method clears the field, and the next reusable one the customer saves becomes the new default. **What updating does not do**: Updating a customer never changes a payment or a subscription that already exists. Their copies of the customer\'s details were taken when they were created, so a corrected email here does not rewrite last month\'s receipt. * @summary Update Customer * @param {string} id The customer ID * @param {UpdateCustomerRequest} updateCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update: (id: string, updateCustomerRequest: UpdateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * CustomersApi - functional programming interface * @export */ declare const CustomersApiFp: (configuration?: Configuration) => { /** * Creates a customer. Every field is optional — a customer with no details at all is valid, and useful if you only want somewhere to attach saved payment methods. Pass the returned `id` as `customerId` when you [create a payment](https://docs.monei.com/apis/rest/payments-create/) or a [subscription](https://docs.monei.com/apis/rest/subscriptions-create/) to link it to this buyer. **What linking does**: - A payment saved with `generatePaymentToken` stores its payment method under this customer - The customer\'s details are copied onto the payment at the time it is made. Editing the customer later never rewrites a payment that already happened - A subscription gains renewal failover across the customer\'s other saved payment methods **Best practices**: - Create the customer once, when the buyer first registers with you, and reuse the `id` - Use `metadata` to store your own user identifier, so you can match your records to MONEI\'s * @summary Create Customer * @param {CreateCustomerRequest} createCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createCustomerRequest: CreateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Deletes a customer and every payment method it owns. This is the operation to use for a data-erasure request: the buyer\'s saved payment methods go with the customer, in one call. **Refused while the customer is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` still names this customer. Cancel those subscriptions first. **What is kept**: Payments and charges already made are not deleted. They keep the copy of the customer\'s details taken at the time, because they are a financial record. * @summary Delete Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ delete(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Deletes one of a customer\'s saved payment methods. **Refused while it is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` is charging this payment method. Cancel or move that subscription first. **If it was the default**: Deleting the customer\'s `defaultTokenId` clears it, rather than silently moving the default to another card. While the customer has no default, a payment sending `useDefaultPaymentMethod` is rejected. The field does not stay empty for good: MONEI fills an empty default with the next reusable payment method the customer saves, the same rule that set the first one. Set `defaultTokenId` yourself if you need to choose which. * @summary Delete Payment Method * @param {string} id The customer ID * @param {string} tokenId The payment method ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ deletePaymentMethod(id: string, tokenId: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieves a customer by its unique ID. Returns the customer\'s contact details, billing and shipping addresses, metadata, and the `defaultTokenId` of the payment method charged when a payment sets `useDefaultPaymentMethod`. The customer\'s saved payment methods are **not** included. Use [List Payment Methods](https://docs.monei.com/apis/rest/customers-list-payment-methods/) for those. A customer belonging to another merchant account is reported as not found. * @summary Get Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Lists the payment methods a customer has saved. Card and account numbers are never returned. Each entry carries only the display details — brand, last four digits, expiry — along with an `id` you can pass as `paymentToken` on a payment. Expired payment methods are left out. **`sequence`**: `sequence: true` marks a payment method saved for merchant-initiated charges, such as subscription renewals. These are the candidates a declined renewal fails over to. `sequence: false` marks one the buyer chose at checkout, which you can charge again with `paymentToken` or set as the customer\'s `defaultTokenId`. * @summary List Payment Methods * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ listPaymentMethods(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>>; /** * Updates a customer. Only the fields you send are changed. **Changing the default payment method**: Set `defaultTokenId` to the ID of a payment method this customer already owns. It must be one that can be reused for future payments — a payment method saved for a single use is rejected. MONEI only ever fills a default that is empty, so a value you set here is kept. Deleting that payment method clears the field, and the next reusable one the customer saves becomes the new default. **What updating does not do**: Updating a customer never changes a payment or a subscription that already exists. Their copies of the customer\'s details were taken when they were created, so a corrected email here does not rewrite last month\'s receipt. * @summary Update Customer * @param {string} id The customer ID * @param {UpdateCustomerRequest} updateCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateCustomerRequest: UpdateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * CustomersApi - factory interface * @export */ declare const CustomersApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Creates a customer. Every field is optional — a customer with no details at all is valid, and useful if you only want somewhere to attach saved payment methods. Pass the returned `id` as `customerId` when you [create a payment](https://docs.monei.com/apis/rest/payments-create/) or a [subscription](https://docs.monei.com/apis/rest/subscriptions-create/) to link it to this buyer. **What linking does**: - A payment saved with `generatePaymentToken` stores its payment method under this customer - The customer\'s details are copied onto the payment at the time it is made. Editing the customer later never rewrites a payment that already happened - A subscription gains renewal failover across the customer\'s other saved payment methods **Best practices**: - Create the customer once, when the buyer first registers with you, and reuse the `id` - Use `metadata` to store your own user identifier, so you can match your records to MONEI\'s * @summary Create Customer * @param {CreateCustomerRequest} createCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createCustomerRequest: CreateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Deletes a customer and every payment method it owns. This is the operation to use for a data-erasure request: the buyer\'s saved payment methods go with the customer, in one call. **Refused while the customer is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` still names this customer. Cancel those subscriptions first. **What is kept**: Payments and charges already made are not deleted. They keep the copy of the customer\'s details taken at the time, because they are a financial record. * @summary Delete Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ delete(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Deletes one of a customer\'s saved payment methods. **Refused while it is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` is charging this payment method. Cancel or move that subscription first. **If it was the default**: Deleting the customer\'s `defaultTokenId` clears it, rather than silently moving the default to another card. While the customer has no default, a payment sending `useDefaultPaymentMethod` is rejected. The field does not stay empty for good: MONEI fills an empty default with the next reusable payment method the customer saves, the same rule that set the first one. Set `defaultTokenId` yourself if you need to choose which. * @summary Delete Payment Method * @param {string} id The customer ID * @param {string} tokenId The payment method ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ deletePaymentMethod(id: string, tokenId: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieves a customer by its unique ID. Returns the customer\'s contact details, billing and shipping addresses, metadata, and the `defaultTokenId` of the payment method charged when a payment sets `useDefaultPaymentMethod`. The customer\'s saved payment methods are **not** included. Use [List Payment Methods](https://docs.monei.com/apis/rest/customers-list-payment-methods/) for those. A customer belonging to another merchant account is reported as not found. * @summary Get Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Lists the payment methods a customer has saved. Card and account numbers are never returned. Each entry carries only the display details — brand, last four digits, expiry — along with an `id` you can pass as `paymentToken` on a payment. Expired payment methods are left out. **`sequence`**: `sequence: true` marks a payment method saved for merchant-initiated charges, such as subscription renewals. These are the candidates a declined renewal fails over to. `sequence: false` marks one the buyer chose at checkout, which you can charge again with `paymentToken` or set as the customer\'s `defaultTokenId`. * @summary List Payment Methods * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ listPaymentMethods(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise>; /** * Updates a customer. Only the fields you send are changed. **Changing the default payment method**: Set `defaultTokenId` to the ID of a payment method this customer already owns. It must be one that can be reused for future payments — a payment method saved for a single use is rejected. MONEI only ever fills a default that is empty, so a value you set here is kept. Deleting that payment method clears the field, and the next reusable one the customer saves becomes the new default. **What updating does not do**: Updating a customer never changes a payment or a subscription that already exists. Their copies of the customer\'s details were taken when they were created, so a corrected email here does not rewrite last month\'s receipt. * @summary Update Customer * @param {string} id The customer ID * @param {UpdateCustomerRequest} updateCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateCustomerRequest: UpdateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * CustomersApi - object-oriented interface * @export * @class CustomersApi * @extends {BaseAPI} */ declare class CustomersApi extends BaseAPI { /** * Creates a customer. Every field is optional — a customer with no details at all is valid, and useful if you only want somewhere to attach saved payment methods. Pass the returned `id` as `customerId` when you [create a payment](https://docs.monei.com/apis/rest/payments-create/) or a [subscription](https://docs.monei.com/apis/rest/subscriptions-create/) to link it to this buyer. **What linking does**: - A payment saved with `generatePaymentToken` stores its payment method under this customer - The customer\'s details are copied onto the payment at the time it is made. Editing the customer later never rewrites a payment that already happened - A subscription gains renewal failover across the customer\'s other saved payment methods **Best practices**: - Create the customer once, when the buyer first registers with you, and reuse the `id` - Use `metadata` to store your own user identifier, so you can match your records to MONEI\'s * @summary Create Customer * @param {CreateCustomerRequest} createCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ create(createCustomerRequest: CreateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Deletes a customer and every payment method it owns. This is the operation to use for a data-erasure request: the buyer\'s saved payment methods go with the customer, in one call. **Refused while the customer is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` still names this customer. Cancel those subscriptions first. **What is kept**: Payments and charges already made are not deleted. They keep the copy of the customer\'s details taken at the time, because they are a financial record. * @summary Delete Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ delete(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Deletes one of a customer\'s saved payment methods. **Refused while it is still billing**: The request fails with `409` when a subscription that is `ACTIVE`, `TRIALING`, `PAUSED` or `PAST_DUE` is charging this payment method. Cancel or move that subscription first. **If it was the default**: Deleting the customer\'s `defaultTokenId` clears it, rather than silently moving the default to another card. While the customer has no default, a payment sending `useDefaultPaymentMethod` is rejected. The field does not stay empty for good: MONEI fills an empty default with the next reusable payment method the customer saves, the same rule that set the first one. Set `defaultTokenId` yourself if you need to choose which. * @summary Delete Payment Method * @param {string} id The customer ID * @param {string} tokenId The payment method ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ deletePaymentMethod(id: string, tokenId: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieves a customer by its unique ID. Returns the customer\'s contact details, billing and shipping addresses, metadata, and the `defaultTokenId` of the payment method charged when a payment sets `useDefaultPaymentMethod`. The customer\'s saved payment methods are **not** included. Use [List Payment Methods](https://docs.monei.com/apis/rest/customers-list-payment-methods/) for those. A customer belonging to another merchant account is reported as not found. * @summary Get Customer * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Lists the payment methods a customer has saved. Card and account numbers are never returned. Each entry carries only the display details — brand, last four digits, expiry — along with an `id` you can pass as `paymentToken` on a payment. Expired payment methods are left out. **`sequence`**: `sequence: true` marks a payment method saved for merchant-initiated charges, such as subscription renewals. These are the candidates a declined renewal fails over to. `sequence: false` marks one the buyer chose at checkout, which you can charge again with `paymentToken` or set as the customer\'s `defaultTokenId`. * @summary List Payment Methods * @param {string} id The customer ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ listPaymentMethods(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Updates a customer. Only the fields you send are changed. **Changing the default payment method**: Set `defaultTokenId` to the ID of a payment method this customer already owns. It must be one that can be reused for future payments — a payment method saved for a single use is rejected. MONEI only ever fills a default that is empty, so a value you set here is kept. Deleting that payment method clears the field, and the next reusable one the customer saves becomes the new default. **What updating does not do**: Updating a customer never changes a payment or a subscription that already exists. Their copies of the customer\'s details were taken when they were created, so a corrected email here does not rewrite last month\'s receipt. * @summary Update Customer * @param {string} id The customer ID * @param {UpdateCustomerRequest} updateCustomerRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof CustomersApi */ update(id: string, updateCustomerRequest: UpdateCustomerRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/posauth-token-api.d.ts /** * POSAuthTokenApi - axios parameter creator * @export */ declare const POSAuthTokenApiAxiosParamCreator: (configuration?: Configuration) => { /** * Generates an RS256-signed JWT token for POS terminal authentication. Use this endpoint to create an auth token that a POS terminal (via MONEI Pay) can use to process payments. This is designed for app-to-app flows where your backend generates the token and passes it to the MONEI Pay app running on a POS device. Both `pointOfSaleId` and `storeId` are optional. When provided, the resulting payments will be associated with the specified terminal and store. If `pointOfSaleId` is omitted, the terminal will be assigned an identifier automatically. The token is valid for 24 hours. * @summary Create POS Auth Token * @param {CreatePosAuthTokenRequest} [createPosAuthTokenRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ create: (createPosAuthTokenRequest?: CreatePosAuthTokenRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * POSAuthTokenApi - functional programming interface * @export */ declare const POSAuthTokenApiFp: (configuration?: Configuration) => { /** * Generates an RS256-signed JWT token for POS terminal authentication. Use this endpoint to create an auth token that a POS terminal (via MONEI Pay) can use to process payments. This is designed for app-to-app flows where your backend generates the token and passes it to the MONEI Pay app running on a POS device. Both `pointOfSaleId` and `storeId` are optional. When provided, the resulting payments will be associated with the specified terminal and store. If `pointOfSaleId` is omitted, the terminal will be assigned an identifier automatically. The token is valid for 24 hours. * @summary Create POS Auth Token * @param {CreatePosAuthTokenRequest} [createPosAuthTokenRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createPosAuthTokenRequest?: CreatePosAuthTokenRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * POSAuthTokenApi - factory interface * @export */ declare const POSAuthTokenApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Generates an RS256-signed JWT token for POS terminal authentication. Use this endpoint to create an auth token that a POS terminal (via MONEI Pay) can use to process payments. This is designed for app-to-app flows where your backend generates the token and passes it to the MONEI Pay app running on a POS device. Both `pointOfSaleId` and `storeId` are optional. When provided, the resulting payments will be associated with the specified terminal and store. If `pointOfSaleId` is omitted, the terminal will be assigned an identifier automatically. The token is valid for 24 hours. * @summary Create POS Auth Token * @param {CreatePosAuthTokenRequest} [createPosAuthTokenRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createPosAuthTokenRequest?: CreatePosAuthTokenRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * POSAuthTokenApi - object-oriented interface * @export * @class POSAuthTokenApi * @extends {BaseAPI} */ declare class POSAuthTokenApi extends BaseAPI { /** * Generates an RS256-signed JWT token for POS terminal authentication. Use this endpoint to create an auth token that a POS terminal (via MONEI Pay) can use to process payments. This is designed for app-to-app flows where your backend generates the token and passes it to the MONEI Pay app running on a POS device. Both `pointOfSaleId` and `storeId` are optional. When provided, the resulting payments will be associated with the specified terminal and store. If `pointOfSaleId` is omitted, the terminal will be assigned an identifier automatically. The token is valid for 24 hours. * @summary Create POS Auth Token * @param {CreatePosAuthTokenRequest} [createPosAuthTokenRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof POSAuthTokenApi */ create(createPosAuthTokenRequest?: CreatePosAuthTokenRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/payment-methods-api.d.ts /** * PaymentMethodsApi - axios parameter creator * @export */ declare const PaymentMethodsApiAxiosParamCreator: (configuration?: Configuration) => { /** * **Deprecated.** Use [Get Allowed Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getAllowed) for server-side (API key) or [Get Client Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getClient) for client-side usage instead. Retrieve available payment methods for an account or a specific payment. You can provide either an `accountId` or a `paymentId` as a query parameter to get the available payment methods. When providing a `paymentId`, the response will include additional payment-specific information such as amount and currency. You can also filter results by `amount`, `currency`, or `countryCode` to narrow down available payment methods. * @summary Get Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for * @param {string} [paymentId] The ID of the payment to get payment methods for * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} */ get: (accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieve allowed payment methods for your account. Requires API key authentication. The account is automatically determined from the API key — no `accountId` parameter is needed. Can be called with no parameters to get all available payment methods. Optionally provide a `paymentId` to get payment methods for a specific transaction, or filter by `amount`, `currency`, or `countryCode`. > **Note:** This endpoint does not auto-detect the customer\'s country. Pass `countryCode` explicitly if you need country-based filtering. * @summary Get Allowed Payment Methods * @param {string} [paymentId] The ID of the payment to get payment methods for. When provided, the response includes payment-specific information such as amount and currency. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAllowed: (paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieve available payment methods from the client side. No authentication required. You must provide either an `accountId` or a `paymentId` as a query parameter. When providing a `paymentId`, the response includes payment-specific information such as amount and currency. If `countryCode` is not provided, it is automatically detected from the client\'s IP address to filter payment methods by geographic availability. You can also filter by `amount` or `currency`. * @summary Get Client Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {string} [paymentId] The ID of the payment to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. If not provided, the country is automatically detected from the client\'s IP address. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getClient: (accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * PaymentMethodsApi - functional programming interface * @export */ declare const PaymentMethodsApiFp: (configuration?: Configuration) => { /** * **Deprecated.** Use [Get Allowed Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getAllowed) for server-side (API key) or [Get Client Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getClient) for client-side usage instead. Retrieve available payment methods for an account or a specific payment. You can provide either an `accountId` or a `paymentId` as a query parameter to get the available payment methods. When providing a `paymentId`, the response will include additional payment-specific information such as amount and currency. You can also filter results by `amount`, `currency`, or `countryCode` to narrow down available payment methods. * @summary Get Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for * @param {string} [paymentId] The ID of the payment to get payment methods for * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} */ get(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieve allowed payment methods for your account. Requires API key authentication. The account is automatically determined from the API key — no `accountId` parameter is needed. Can be called with no parameters to get all available payment methods. Optionally provide a `paymentId` to get payment methods for a specific transaction, or filter by `amount`, `currency`, or `countryCode`. > **Note:** This endpoint does not auto-detect the customer\'s country. Pass `countryCode` explicitly if you need country-based filtering. * @summary Get Allowed Payment Methods * @param {string} [paymentId] The ID of the payment to get payment methods for. When provided, the response includes payment-specific information such as amount and currency. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAllowed(paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieve available payment methods from the client side. No authentication required. You must provide either an `accountId` or a `paymentId` as a query parameter. When providing a `paymentId`, the response includes payment-specific information such as amount and currency. If `countryCode` is not provided, it is automatically detected from the client\'s IP address to filter payment methods by geographic availability. You can also filter by `amount` or `currency`. * @summary Get Client Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {string} [paymentId] The ID of the payment to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. If not provided, the country is automatically detected from the client\'s IP address. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getClient(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * PaymentMethodsApi - factory interface * @export */ declare const PaymentMethodsApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * **Deprecated.** Use [Get Allowed Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getAllowed) for server-side (API key) or [Get Client Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getClient) for client-side usage instead. Retrieve available payment methods for an account or a specific payment. You can provide either an `accountId` or a `paymentId` as a query parameter to get the available payment methods. When providing a `paymentId`, the response will include additional payment-specific information such as amount and currency. You can also filter results by `amount`, `currency`, or `countryCode` to narrow down available payment methods. * @summary Get Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for * @param {string} [paymentId] The ID of the payment to get payment methods for * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} */ get(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieve allowed payment methods for your account. Requires API key authentication. The account is automatically determined from the API key — no `accountId` parameter is needed. Can be called with no parameters to get all available payment methods. Optionally provide a `paymentId` to get payment methods for a specific transaction, or filter by `amount`, `currency`, or `countryCode`. > **Note:** This endpoint does not auto-detect the customer\'s country. Pass `countryCode` explicitly if you need country-based filtering. * @summary Get Allowed Payment Methods * @param {string} [paymentId] The ID of the payment to get payment methods for. When provided, the response includes payment-specific information such as amount and currency. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getAllowed(paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieve available payment methods from the client side. No authentication required. You must provide either an `accountId` or a `paymentId` as a query parameter. When providing a `paymentId`, the response includes payment-specific information such as amount and currency. If `countryCode` is not provided, it is automatically detected from the client\'s IP address to filter payment methods by geographic availability. You can also filter by `amount` or `currency`. * @summary Get Client Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {string} [paymentId] The ID of the payment to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. If not provided, the country is automatically detected from the client\'s IP address. * @param {*} [options] Override http request option. * @throws {RequiredError} */ getClient(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * PaymentMethodsApi - object-oriented interface * @export * @class PaymentMethodsApi * @extends {BaseAPI} */ declare class PaymentMethodsApi extends BaseAPI { /** * **Deprecated.** Use [Get Allowed Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getAllowed) for server-side (API key) or [Get Client Payment Methods](#tag/Payment-Methods/operation/paymentMethods_getClient) for client-side usage instead. Retrieve available payment methods for an account or a specific payment. You can provide either an `accountId` or a `paymentId` as a query parameter to get the available payment methods. When providing a `paymentId`, the response will include additional payment-specific information such as amount and currency. You can also filter results by `amount`, `currency`, or `countryCode` to narrow down available payment methods. * @summary Get Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for * @param {string} [paymentId] The ID of the payment to get payment methods for * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @deprecated * @throws {RequiredError} * @memberof PaymentMethodsApi */ get(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieve allowed payment methods for your account. Requires API key authentication. The account is automatically determined from the API key — no `accountId` parameter is needed. Can be called with no parameters to get all available payment methods. Optionally provide a `paymentId` to get payment methods for a specific transaction, or filter by `amount`, `currency`, or `countryCode`. > **Note:** This endpoint does not auto-detect the customer\'s country. Pass `countryCode` explicitly if you need country-based filtering. * @summary Get Allowed Payment Methods * @param {string} [paymentId] The ID of the payment to get payment methods for. When provided, the response includes payment-specific information such as amount and currency. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentMethodsApi */ getAllowed(paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieve available payment methods from the client side. No authentication required. You must provide either an `accountId` or a `paymentId` as a query parameter. When providing a `paymentId`, the response includes payment-specific information such as amount and currency. If `countryCode` is not provided, it is automatically detected from the client\'s IP address to filter payment methods by geographic availability. You can also filter by `amount` or `currency`. * @summary Get Client Payment Methods * @param {string} [accountId] The ID of the account to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {string} [paymentId] The ID of the payment to get payment methods for. Either `accountId` or `paymentId` must be provided. * @param {number} [amount] Amount in the smallest currency unit (e.g. cents). Used to filter payment methods by amount limits. * @param {string} [currency] Three-letter ISO 4217 currency code, in uppercase. Used to filter payment methods by currency support. * @param {string} [countryCode] Two-letter ISO 3166-1 alpha-2 country code. Used to filter payment methods by country availability. If not provided, the country is automatically detected from the client\'s IP address. * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentMethodsApi */ getClient(accountId?: string, paymentId?: string, amount?: number, currency?: string, countryCode?: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/payments-api.d.ts /** * PaymentsApi - axios parameter creator * @export */ declare const PaymentsApiAxiosParamCreator: (configuration?: Configuration) => { /** * Releases reserved funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. This operation is part of the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to reserve funds 2. **Cancel**: Release the reserved funds if you decide not to capture the payment Cancellation makes the reserved funds available to the customer again and prevents you from being able to capture those funds in the future. Once cancelled, an authorization cannot be reactivated. * @summary Cancel Payment * @param {string} id The payment ID * @param {CancelPaymentRequest} [cancelPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel: (id: string, cancelPaymentRequest?: CancelPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Captures funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. Both full and partial captures are supported — specify an `amount` less than or equal to the original authorized amount to perform a partial capture. This operation completes the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to hold or validate funds 2. **Capture**: Transfer the funds to your account when ready to fulfill the order **Important**: The capture window depends on the payment method: - **Card payments**: Authorized payments expire after **7 days**. - **Bizum payments**: Authorized payments expire after **30 days**. After expiration, they will be marked as `EXPIRED` and can no longer be captured. Be sure to capture funds within the applicable timeframe or communicate with your customer about a new payment. * @summary Capture Payment * @param {string} id The payment ID * @param {CapturePaymentRequest} [capturePaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ capture: (id: string, capturePaymentRequest?: CapturePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Confirms a payment that was created without payment details. This endpoint can only be used with payments in `PENDING` status. The two-step payment flow: 1. **Create**: First, create a payment without payment details (status: `PENDING`) 2. **Confirm**: Then provide payment details to complete the transaction When confirming a payment, you can use: - A newly generated `paymentToken` from [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous payment (generated with `generatePaymentToken: true`) Using permanent payment tokens enables one-click checkout experiences for returning customers without requiring them to re-enter their payment information. You can provide additional customer information during confirmation, which will override any corresponding information originally passed in the payment creation request. * @summary Confirm Payment * @param {string} id The payment ID * @param {ConfirmPaymentRequest} [confirmPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ confirm: (id: string, confirmPaymentRequest?: ConfirmPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Creates a new payment with the specified parameters. You can create a payment in two ways: 1. **Immediate processing**: Provide a `paymentToken` or `paymentMethod` - The payment will be processed instantly 2. **Deferred processing**: Create without payment details - The payment remains in `PENDING` status until you confirm it later using the [confirm endpoint](https://docs.monei.com/apis/rest/payments-confirm/) When creating a payment without payment details, you can redirect customers to the hosted payment page where they can select their preferred payment method and complete the transaction. For immediate processing, use one of these token options: - A temporary `paymentToken` generated on the frontend using [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous successful payment (when `generatePaymentToken: true` was included) Permanent tokens enable one-click checkout experiences for returning customers by allowing you to securely store and reuse payment details without requiring customers to re-enter their information. * @summary Create Payment * @param {CreatePaymentRequest} createPaymentRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create: (createPaymentRequest: CreatePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieves the complete details of an existing payment by its unique ID. This endpoint returns all available information about the payment, including its current status, amount, customer details, timestamps, and transaction history. Use this to check the status of a payment, verify payment details, or retrieve information for your records. Supply the unique payment ID that was returned from your previous request. * @summary Get Payment * @param {string} id The payment ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Creates a subsequent charge using the payment details from a previous transaction. This endpoint enables recurring billing and subscription payments by: - Using the same payment method as the original payment - Charging the customer without requiring them to re-enter payment details - Supporting variable or fixed amounts (defaults to the original payment amount if not specified) **Prerequisites:** 1. The initial payment must be created with the `sequence` parameter 2. The initial payment will return a `sequenceId` in the response 3. This `sequenceId` must be provided in the URL path when making subsequent recurring charges Ideal for subscription services, membership renewals, and installment payments. **Need more advanced subscription management?** For comprehensive subscription management with features like billing cycles, trial periods, and automatic recurring billing, consider using the [Subscriptions API](https://docs.monei.com/apis/rest/subscriptions/) instead. It provides a complete solution for creating and managing subscription-based services. * @summary Recurring Payment * @param {string} sequenceId The sequence ID * @param {RecurringPaymentRequest} [recurringPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ recurring: (sequenceId: string, recurringPaymentRequest?: RecurringPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Returns funds from a completed payment back to the customer\'s original payment method. **Refund options:** - **Full refund**: Return the entire payment amount - **Partial refund**: Specify an amount less than the original payment - **Multiple partial refunds**: Issue several partial refunds until the total payment amount is reached **Limitations:** - You can only refund payments that have been successfully processed - A payment can only be refunded up to its original amount - Once fully refunded, a payment cannot be refunded again - Attempting to refund more than the remaining available amount will result in an error * @summary Refund Payment * @param {string} id The payment ID * @param {RefundPaymentRequest} [refundPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ refund: (id: string, refundPaymentRequest?: RefundPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Sends a payment link to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The payment link allows customers to complete the payment at their convenience using their preferred payment method on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Link * @param {string} id The payment ID * @param {SendPaymentLinkRequest} [sendPaymentLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink: (id: string, sendPaymentLinkRequest?: SendPaymentLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Sends a payment receipt to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Succeeded **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Receipt is sent via email - If customer phone is available: Receipt is sent via WhatsApp - If WhatsApp delivery fails: Receipt is sent via SMS as a fallback The receipt includes payment details such as amount, date, transaction ID, and merchant information, providing customers with a record of their successful transaction. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Receipt * @param {string} id The payment ID * @param {SendPaymentReceiptRequest} [sendPaymentReceiptRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendReceipt: (id: string, sendPaymentReceiptRequest?: SendPaymentReceiptRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Sends a direct payment request to the customer\'s phone with smart channel selection. **Smart delivery logic based on customer phone capabilities:** - If the phone number is registered with Bizum and that payment method is available: The customer receives a push notification in their banking app to instantly approve the payment - If Bizum is not available or the phone is not registered with Bizum: The customer receives a payment link via WhatsApp to complete the payment This endpoint provides a streamlined payment experience, especially for Spanish customers with Bizum integration, enabling quick and convenient mobile payments. * @summary Send Payment Request * @param {string} id The payment ID * @param {SendPaymentRequestRequest} sendPaymentRequestRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendRequest: (id: string, sendPaymentRequestRequest: SendPaymentRequestRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * PaymentsApi - functional programming interface * @export */ declare const PaymentsApiFp: (configuration?: Configuration) => { /** * Releases reserved funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. This operation is part of the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to reserve funds 2. **Cancel**: Release the reserved funds if you decide not to capture the payment Cancellation makes the reserved funds available to the customer again and prevents you from being able to capture those funds in the future. Once cancelled, an authorization cannot be reactivated. * @summary Cancel Payment * @param {string} id The payment ID * @param {CancelPaymentRequest} [cancelPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel(id: string, cancelPaymentRequest?: CancelPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Captures funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. Both full and partial captures are supported — specify an `amount` less than or equal to the original authorized amount to perform a partial capture. This operation completes the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to hold or validate funds 2. **Capture**: Transfer the funds to your account when ready to fulfill the order **Important**: The capture window depends on the payment method: - **Card payments**: Authorized payments expire after **7 days**. - **Bizum payments**: Authorized payments expire after **30 days**. After expiration, they will be marked as `EXPIRED` and can no longer be captured. Be sure to capture funds within the applicable timeframe or communicate with your customer about a new payment. * @summary Capture Payment * @param {string} id The payment ID * @param {CapturePaymentRequest} [capturePaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ capture(id: string, capturePaymentRequest?: CapturePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Confirms a payment that was created without payment details. This endpoint can only be used with payments in `PENDING` status. The two-step payment flow: 1. **Create**: First, create a payment without payment details (status: `PENDING`) 2. **Confirm**: Then provide payment details to complete the transaction When confirming a payment, you can use: - A newly generated `paymentToken` from [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous payment (generated with `generatePaymentToken: true`) Using permanent payment tokens enables one-click checkout experiences for returning customers without requiring them to re-enter their payment information. You can provide additional customer information during confirmation, which will override any corresponding information originally passed in the payment creation request. * @summary Confirm Payment * @param {string} id The payment ID * @param {ConfirmPaymentRequest} [confirmPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ confirm(id: string, confirmPaymentRequest?: ConfirmPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Creates a new payment with the specified parameters. You can create a payment in two ways: 1. **Immediate processing**: Provide a `paymentToken` or `paymentMethod` - The payment will be processed instantly 2. **Deferred processing**: Create without payment details - The payment remains in `PENDING` status until you confirm it later using the [confirm endpoint](https://docs.monei.com/apis/rest/payments-confirm/) When creating a payment without payment details, you can redirect customers to the hosted payment page where they can select their preferred payment method and complete the transaction. For immediate processing, use one of these token options: - A temporary `paymentToken` generated on the frontend using [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous successful payment (when `generatePaymentToken: true` was included) Permanent tokens enable one-click checkout experiences for returning customers by allowing you to securely store and reuse payment details without requiring customers to re-enter their information. * @summary Create Payment * @param {CreatePaymentRequest} createPaymentRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createPaymentRequest: CreatePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieves the complete details of an existing payment by its unique ID. This endpoint returns all available information about the payment, including its current status, amount, customer details, timestamps, and transaction history. Use this to check the status of a payment, verify payment details, or retrieve information for your records. Supply the unique payment ID that was returned from your previous request. * @summary Get Payment * @param {string} id The payment ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Creates a subsequent charge using the payment details from a previous transaction. This endpoint enables recurring billing and subscription payments by: - Using the same payment method as the original payment - Charging the customer without requiring them to re-enter payment details - Supporting variable or fixed amounts (defaults to the original payment amount if not specified) **Prerequisites:** 1. The initial payment must be created with the `sequence` parameter 2. The initial payment will return a `sequenceId` in the response 3. This `sequenceId` must be provided in the URL path when making subsequent recurring charges Ideal for subscription services, membership renewals, and installment payments. **Need more advanced subscription management?** For comprehensive subscription management with features like billing cycles, trial periods, and automatic recurring billing, consider using the [Subscriptions API](https://docs.monei.com/apis/rest/subscriptions/) instead. It provides a complete solution for creating and managing subscription-based services. * @summary Recurring Payment * @param {string} sequenceId The sequence ID * @param {RecurringPaymentRequest} [recurringPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ recurring(sequenceId: string, recurringPaymentRequest?: RecurringPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Returns funds from a completed payment back to the customer\'s original payment method. **Refund options:** - **Full refund**: Return the entire payment amount - **Partial refund**: Specify an amount less than the original payment - **Multiple partial refunds**: Issue several partial refunds until the total payment amount is reached **Limitations:** - You can only refund payments that have been successfully processed - A payment can only be refunded up to its original amount - Once fully refunded, a payment cannot be refunded again - Attempting to refund more than the remaining available amount will result in an error * @summary Refund Payment * @param {string} id The payment ID * @param {RefundPaymentRequest} [refundPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ refund(id: string, refundPaymentRequest?: RefundPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Sends a payment link to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The payment link allows customers to complete the payment at their convenience using their preferred payment method on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Link * @param {string} id The payment ID * @param {SendPaymentLinkRequest} [sendPaymentLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink(id: string, sendPaymentLinkRequest?: SendPaymentLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Sends a payment receipt to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Succeeded **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Receipt is sent via email - If customer phone is available: Receipt is sent via WhatsApp - If WhatsApp delivery fails: Receipt is sent via SMS as a fallback The receipt includes payment details such as amount, date, transaction ID, and merchant information, providing customers with a record of their successful transaction. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Receipt * @param {string} id The payment ID * @param {SendPaymentReceiptRequest} [sendPaymentReceiptRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendReceipt(id: string, sendPaymentReceiptRequest?: SendPaymentReceiptRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Sends a direct payment request to the customer\'s phone with smart channel selection. **Smart delivery logic based on customer phone capabilities:** - If the phone number is registered with Bizum and that payment method is available: The customer receives a push notification in their banking app to instantly approve the payment - If Bizum is not available or the phone is not registered with Bizum: The customer receives a payment link via WhatsApp to complete the payment This endpoint provides a streamlined payment experience, especially for Spanish customers with Bizum integration, enabling quick and convenient mobile payments. * @summary Send Payment Request * @param {string} id The payment ID * @param {SendPaymentRequestRequest} sendPaymentRequestRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendRequest(id: string, sendPaymentRequestRequest: SendPaymentRequestRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * PaymentsApi - factory interface * @export */ declare const PaymentsApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Releases reserved funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. This operation is part of the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to reserve funds 2. **Cancel**: Release the reserved funds if you decide not to capture the payment Cancellation makes the reserved funds available to the customer again and prevents you from being able to capture those funds in the future. Once cancelled, an authorization cannot be reactivated. * @summary Cancel Payment * @param {string} id The payment ID * @param {CancelPaymentRequest} [cancelPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel(id: string, cancelPaymentRequest?: CancelPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Captures funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. Both full and partial captures are supported — specify an `amount` less than or equal to the original authorized amount to perform a partial capture. This operation completes the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to hold or validate funds 2. **Capture**: Transfer the funds to your account when ready to fulfill the order **Important**: The capture window depends on the payment method: - **Card payments**: Authorized payments expire after **7 days**. - **Bizum payments**: Authorized payments expire after **30 days**. After expiration, they will be marked as `EXPIRED` and can no longer be captured. Be sure to capture funds within the applicable timeframe or communicate with your customer about a new payment. * @summary Capture Payment * @param {string} id The payment ID * @param {CapturePaymentRequest} [capturePaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ capture(id: string, capturePaymentRequest?: CapturePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Confirms a payment that was created without payment details. This endpoint can only be used with payments in `PENDING` status. The two-step payment flow: 1. **Create**: First, create a payment without payment details (status: `PENDING`) 2. **Confirm**: Then provide payment details to complete the transaction When confirming a payment, you can use: - A newly generated `paymentToken` from [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous payment (generated with `generatePaymentToken: true`) Using permanent payment tokens enables one-click checkout experiences for returning customers without requiring them to re-enter their payment information. You can provide additional customer information during confirmation, which will override any corresponding information originally passed in the payment creation request. * @summary Confirm Payment * @param {string} id The payment ID * @param {ConfirmPaymentRequest} [confirmPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ confirm(id: string, confirmPaymentRequest?: ConfirmPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Creates a new payment with the specified parameters. You can create a payment in two ways: 1. **Immediate processing**: Provide a `paymentToken` or `paymentMethod` - The payment will be processed instantly 2. **Deferred processing**: Create without payment details - The payment remains in `PENDING` status until you confirm it later using the [confirm endpoint](https://docs.monei.com/apis/rest/payments-confirm/) When creating a payment without payment details, you can redirect customers to the hosted payment page where they can select their preferred payment method and complete the transaction. For immediate processing, use one of these token options: - A temporary `paymentToken` generated on the frontend using [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous successful payment (when `generatePaymentToken: true` was included) Permanent tokens enable one-click checkout experiences for returning customers by allowing you to securely store and reuse payment details without requiring customers to re-enter their information. * @summary Create Payment * @param {CreatePaymentRequest} createPaymentRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createPaymentRequest: CreatePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieves the complete details of an existing payment by its unique ID. This endpoint returns all available information about the payment, including its current status, amount, customer details, timestamps, and transaction history. Use this to check the status of a payment, verify payment details, or retrieve information for your records. Supply the unique payment ID that was returned from your previous request. * @summary Get Payment * @param {string} id The payment ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Creates a subsequent charge using the payment details from a previous transaction. This endpoint enables recurring billing and subscription payments by: - Using the same payment method as the original payment - Charging the customer without requiring them to re-enter payment details - Supporting variable or fixed amounts (defaults to the original payment amount if not specified) **Prerequisites:** 1. The initial payment must be created with the `sequence` parameter 2. The initial payment will return a `sequenceId` in the response 3. This `sequenceId` must be provided in the URL path when making subsequent recurring charges Ideal for subscription services, membership renewals, and installment payments. **Need more advanced subscription management?** For comprehensive subscription management with features like billing cycles, trial periods, and automatic recurring billing, consider using the [Subscriptions API](https://docs.monei.com/apis/rest/subscriptions/) instead. It provides a complete solution for creating and managing subscription-based services. * @summary Recurring Payment * @param {string} sequenceId The sequence ID * @param {RecurringPaymentRequest} [recurringPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ recurring(sequenceId: string, recurringPaymentRequest?: RecurringPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Returns funds from a completed payment back to the customer\'s original payment method. **Refund options:** - **Full refund**: Return the entire payment amount - **Partial refund**: Specify an amount less than the original payment - **Multiple partial refunds**: Issue several partial refunds until the total payment amount is reached **Limitations:** - You can only refund payments that have been successfully processed - A payment can only be refunded up to its original amount - Once fully refunded, a payment cannot be refunded again - Attempting to refund more than the remaining available amount will result in an error * @summary Refund Payment * @param {string} id The payment ID * @param {RefundPaymentRequest} [refundPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ refund(id: string, refundPaymentRequest?: RefundPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Sends a payment link to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The payment link allows customers to complete the payment at their convenience using their preferred payment method on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Link * @param {string} id The payment ID * @param {SendPaymentLinkRequest} [sendPaymentLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink(id: string, sendPaymentLinkRequest?: SendPaymentLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Sends a payment receipt to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Succeeded **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Receipt is sent via email - If customer phone is available: Receipt is sent via WhatsApp - If WhatsApp delivery fails: Receipt is sent via SMS as a fallback The receipt includes payment details such as amount, date, transaction ID, and merchant information, providing customers with a record of their successful transaction. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Receipt * @param {string} id The payment ID * @param {SendPaymentReceiptRequest} [sendPaymentReceiptRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendReceipt(id: string, sendPaymentReceiptRequest?: SendPaymentReceiptRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Sends a direct payment request to the customer\'s phone with smart channel selection. **Smart delivery logic based on customer phone capabilities:** - If the phone number is registered with Bizum and that payment method is available: The customer receives a push notification in their banking app to instantly approve the payment - If Bizum is not available or the phone is not registered with Bizum: The customer receives a payment link via WhatsApp to complete the payment This endpoint provides a streamlined payment experience, especially for Spanish customers with Bizum integration, enabling quick and convenient mobile payments. * @summary Send Payment Request * @param {string} id The payment ID * @param {SendPaymentRequestRequest} sendPaymentRequestRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendRequest(id: string, sendPaymentRequestRequest: SendPaymentRequestRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * PaymentsApi - object-oriented interface * @export * @class PaymentsApi * @extends {BaseAPI} */ declare class PaymentsApi extends BaseAPI { /** * Releases reserved funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. This operation is part of the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to reserve funds 2. **Cancel**: Release the reserved funds if you decide not to capture the payment Cancellation makes the reserved funds available to the customer again and prevents you from being able to capture those funds in the future. Once cancelled, an authorization cannot be reactivated. * @summary Cancel Payment * @param {string} id The payment ID * @param {CancelPaymentRequest} [cancelPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ cancel(id: string, cancelPaymentRequest?: CancelPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Captures funds from a previously authorized payment. This endpoint can only be used with payments in `AUTHORIZED` status. Both full and partial captures are supported — specify an `amount` less than or equal to the original authorized amount to perform a partial capture. This operation completes the two-step authorization flow: 1. **Authorize**: Create a payment with `transactionType: AUTH` to hold or validate funds 2. **Capture**: Transfer the funds to your account when ready to fulfill the order **Important**: The capture window depends on the payment method: - **Card payments**: Authorized payments expire after **7 days**. - **Bizum payments**: Authorized payments expire after **30 days**. After expiration, they will be marked as `EXPIRED` and can no longer be captured. Be sure to capture funds within the applicable timeframe or communicate with your customer about a new payment. * @summary Capture Payment * @param {string} id The payment ID * @param {CapturePaymentRequest} [capturePaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ capture(id: string, capturePaymentRequest?: CapturePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Confirms a payment that was created without payment details. This endpoint can only be used with payments in `PENDING` status. The two-step payment flow: 1. **Create**: First, create a payment without payment details (status: `PENDING`) 2. **Confirm**: Then provide payment details to complete the transaction When confirming a payment, you can use: - A newly generated `paymentToken` from [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous payment (generated with `generatePaymentToken: true`) Using permanent payment tokens enables one-click checkout experiences for returning customers without requiring them to re-enter their payment information. You can provide additional customer information during confirmation, which will override any corresponding information originally passed in the payment creation request. * @summary Confirm Payment * @param {string} id The payment ID * @param {ConfirmPaymentRequest} [confirmPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ confirm(id: string, confirmPaymentRequest?: ConfirmPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Creates a new payment with the specified parameters. You can create a payment in two ways: 1. **Immediate processing**: Provide a `paymentToken` or `paymentMethod` - The payment will be processed instantly 2. **Deferred processing**: Create without payment details - The payment remains in `PENDING` status until you confirm it later using the [confirm endpoint](https://docs.monei.com/apis/rest/payments-confirm/) When creating a payment without payment details, you can redirect customers to the hosted payment page where they can select their preferred payment method and complete the transaction. For immediate processing, use one of these token options: - A temporary `paymentToken` generated on the frontend using [monei.js Components](https://docs.monei.com/monei-js/overview/) - A permanent `paymentToken` from a previous successful payment (when `generatePaymentToken: true` was included) Permanent tokens enable one-click checkout experiences for returning customers by allowing you to securely store and reuse payment details without requiring customers to re-enter their information. * @summary Create Payment * @param {CreatePaymentRequest} createPaymentRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ create(createPaymentRequest: CreatePaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieves the complete details of an existing payment by its unique ID. This endpoint returns all available information about the payment, including its current status, amount, customer details, timestamps, and transaction history. Use this to check the status of a payment, verify payment details, or retrieve information for your records. Supply the unique payment ID that was returned from your previous request. * @summary Get Payment * @param {string} id The payment ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Creates a subsequent charge using the payment details from a previous transaction. This endpoint enables recurring billing and subscription payments by: - Using the same payment method as the original payment - Charging the customer without requiring them to re-enter payment details - Supporting variable or fixed amounts (defaults to the original payment amount if not specified) **Prerequisites:** 1. The initial payment must be created with the `sequence` parameter 2. The initial payment will return a `sequenceId` in the response 3. This `sequenceId` must be provided in the URL path when making subsequent recurring charges Ideal for subscription services, membership renewals, and installment payments. **Need more advanced subscription management?** For comprehensive subscription management with features like billing cycles, trial periods, and automatic recurring billing, consider using the [Subscriptions API](https://docs.monei.com/apis/rest/subscriptions/) instead. It provides a complete solution for creating and managing subscription-based services. * @summary Recurring Payment * @param {string} sequenceId The sequence ID * @param {RecurringPaymentRequest} [recurringPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ recurring(sequenceId: string, recurringPaymentRequest?: RecurringPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Returns funds from a completed payment back to the customer\'s original payment method. **Refund options:** - **Full refund**: Return the entire payment amount - **Partial refund**: Specify an amount less than the original payment - **Multiple partial refunds**: Issue several partial refunds until the total payment amount is reached **Limitations:** - You can only refund payments that have been successfully processed - A payment can only be refunded up to its original amount - Once fully refunded, a payment cannot be refunded again - Attempting to refund more than the remaining available amount will result in an error * @summary Refund Payment * @param {string} id The payment ID * @param {RefundPaymentRequest} [refundPaymentRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ refund(id: string, refundPaymentRequest?: RefundPaymentRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Sends a payment link to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The payment link allows customers to complete the payment at their convenience using their preferred payment method on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Link * @param {string} id The payment ID * @param {SendPaymentLinkRequest} [sendPaymentLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ sendLink(id: string, sendPaymentLinkRequest?: SendPaymentLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Sends a payment receipt to the customer through their preferred communication channel. **This API can only be used for payments with the following status:** - Succeeded **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Receipt is sent via email - If customer phone is available: Receipt is sent via WhatsApp - If WhatsApp delivery fails: Receipt is sent via SMS as a fallback The receipt includes payment details such as amount, date, transaction ID, and merchant information, providing customers with a record of their successful transaction. If no customer contact information is provided, the system will use the details stored in the payment record. * @summary Send Payment Receipt * @param {string} id The payment ID * @param {SendPaymentReceiptRequest} [sendPaymentReceiptRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ sendReceipt(id: string, sendPaymentReceiptRequest?: SendPaymentReceiptRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Sends a direct payment request to the customer\'s phone with smart channel selection. **Smart delivery logic based on customer phone capabilities:** - If the phone number is registered with Bizum and that payment method is available: The customer receives a push notification in their banking app to instantly approve the payment - If Bizum is not available or the phone is not registered with Bizum: The customer receives a payment link via WhatsApp to complete the payment This endpoint provides a streamlined payment experience, especially for Spanish customers with Bizum integration, enabling quick and convenient mobile payments. * @summary Send Payment Request * @param {string} id The payment ID * @param {SendPaymentRequestRequest} sendPaymentRequestRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof PaymentsApi */ sendRequest(id: string, sendPaymentRequestRequest: SendPaymentRequestRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region src/api/subscriptions-api.d.ts /** * SubscriptionsApi - axios parameter creator * @export */ declare const SubscriptionsApiAxiosParamCreator: (configuration?: Configuration) => { /** * Activates a subscription by attaching a payment method and initiating the billing cycle. **Activation Process**: 1. This endpoint transitions a `PENDING` subscription to `ACTIVE` status 2. An initial payment is created to validate the payment method: - For regular subscriptions: First billing cycle payment is processed immediately - For trial subscriptions: A zero-amount payment is created to verify the payment method **Payment Method Updates**: If the subscription is already active, this endpoint can be used to update the payment method. The update process creates a zero-amount payment to verify the new payment method works correctly. **Important Notes**: - Subscription billing begins immediately upon successful activation (unless in trial period) - The payment method provided will be used for all future recurring charges - Activation failures (due to invalid payment method) will keep the subscription in `PENDING` status - You can specify `allowedPaymentMethods` to restrict which payment methods (e.g., `card`, `bizum`) are accepted for the subscription * @summary Activate Subscription * @param {string} id The subscription ID * @param {ActivateSubscriptionRequest} [activateSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate: (id: string, activateSubscriptionRequest?: ActivateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Cancels an active subscription, permanently stopping the billing cycle. **Cancellation Effects**: - The subscription status changes to `CANCELED` - No further charges will be processed - Access to subscription services typically ends immediately or at period end (depending on your business rules) **Important Notes**: - Cancellation is permanent and cannot be undone - To restart service, a new subscription must be created - Consider using `pauseAtPeriodEnd` or `cancelAtPeriodEnd` for softer transitions Use this endpoint when a customer wishes to completely terminate their subscription. * @summary Cancel Subscription * @param {string} id The subscription ID * @param {CancelSubscriptionRequest} [cancelSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel: (id: string, cancelSubscriptionRequest?: CancelSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Creates a new subscription with the specified parameters. **Subscription Lifecycle**: 1. When first created, the subscription has a `PENDING` status 2. To initiate billing, you must call the [activate endpoint](https://docs.monei.com/apis/rest/subscriptions-activate/) with payment details 3. Once activated, the subscription will automatically bill according to the configured interval **Key Configuration Parameters**: - **Billing settings**: Amount, currency, interval (daily, weekly, monthly, yearly) - **Schedule customization**: Interval count, trial period duration - **Trial pricing**: Offer a free trial with `trialPeriodDays`/`trialPeriodEnd` (no charge until the trial ends), or discounted introductory pricing with `trialAmount` + `trialIntervalCount` (the `trialAmount` is charged each billing cycle for that many cycles, then the regular `amount` applies). `trialAmount` can also be combined with `trialPeriodDays`/`trialPeriodEnd` to charge it once at activation for the whole trial period. `trialIntervalCount` requires `trialAmount` and cannot be combined with `trialPeriodDays`/`trialPeriodEnd` **Example — 5 EUR for the first 3 months, then 10 EUR/month**: ```json { \"amount\": 1000, \"currency\": \"EUR\", \"interval\": \"month\", \"intervalCount\": 1, \"trialAmount\": 500, \"trialIntervalCount\": 3 } ``` The customer pays 5.00 EUR at activation and for the next two monthly cycles (3 discounted cycles in total), then 10.00 EUR every month. - **Allowed payment methods**: An array of strings specifying which payment methods are allowed for this subscription (e.g., `card`, `bizum`) - **Customer information**: Contact details, billing and shipping addresses - **Communication**: Callback URLs for webhook notifications about subscription events **Best Practices**: - Set clear, descriptive names for subscriptions to help with identification - Configure appropriate webhook notifications to monitor subscription status changes - Consider offering trial periods to increase customer conversion rates - Use metadata to store additional information relevant to your business logic * @summary Create Subscription * @param {CreateSubscriptionRequest} createSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create: (createSubscriptionRequest: CreateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Retrieves the complete details of an existing subscription by its unique ID. This endpoint returns comprehensive information about the subscription, including: - Current status and lifecycle details (active, paused, canceled) - Billing configuration (amount, currency, interval) - Schedule information (current period, next payment date) - Customer and payment method details - Payment history (including last payment status) - Trial period information (if applicable) Use this endpoint to check subscription status, verify billing details, or retrieve information needed for customer support inquiries. * @summary Get Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Pauses an active subscription, temporarily halting the billing cycle. **Pause Effects**: - Billing is immediately suspended - The subscription status changes to `PAUSED` - No charges will be processed while the subscription remains paused - The current billing period end date remains unchanged **Use Cases**: - Temporary service interruptions - Customer vacation or absence periods - Account maintenance or dispute resolution To resume billing, use the [resume endpoint](https://docs.monei.com/apis/rest/subscriptions-resume/). * @summary Pause Subscription * @param {string} id The subscription ID * @param {PauseSubscriptionRequest} [pauseSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ pause: (id: string, pauseSubscriptionRequest?: PauseSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Calculate what a prorated change to a subscription would settle, without applying it. Send the `amount`, `interval`, `intervalCount` or `nextPaymentAt` you intend to set. The response reports the credit for unused time, the charge for the new price or the extra time, and the net difference that would move. Nothing is charged, refunded or stored. Use this to show a customer the cost of a plan change, or of moving their next charge date, before they confirm it. Then apply the change with [Update Subscription](https://docs.monei.com/apis/rest/subscriptions-update/) and `prorate: true`. The figures are an estimate. Applying the change recalculates them at that moment, so a preview taken much earlier can differ. The same validation runs here as on the update, so a change this endpoint rejects would also be rejected when applied. * @summary Preview Subscription Update * @param {string} id The subscription ID * @param {PreviewSubscriptionUpdateRequest} previewSubscriptionUpdateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ preview: (id: string, previewSubscriptionUpdateRequest: PreviewSubscriptionUpdateRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Resumes a previously paused subscription, reactivating the billing cycle. **Resume Effects**: - Billing is immediately reactivated - The subscription status changes from `PAUSED` to `ACTIVE` - The next billing date is recalculated based on the current date - Regular charging schedule resumes according to the subscription interval **Important Notes**: - No immediate charge is created when resuming (billing continues on next scheduled date) - Any pause duration is added to the current billing period, maintaining the expected number of billing cycles - If a significant time has passed, verify that the payment method is still valid * @summary Resume Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ resume: (id: string, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Sends a subscription activation link to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The subscription activation link allows customers to complete their subscription setup by providing payment details on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the subscription record. * @summary Send Subscription Link * @param {string} id The subscription ID * @param {SendSubscriptionLinkRequest} [sendSubscriptionLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink: (id: string, sendSubscriptionLinkRequest?: SendSubscriptionLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Sends subscription status information to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following statuses:** - Active - Trialing - Past due **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Status is sent via email - If customer phone is available: Status is sent via WhatsApp - If WhatsApp delivery fails: Status is sent via SMS as a fallback The status notification includes subscription details such as current status, upcoming payments, and recent changes. If no customer contact information is provided, the system will use the details stored in the subscription record. **Email notifications include contextual action links based on subscription status:** - For past due subscriptions: A link to reactivate the subscription - For active and trialing subscriptions: A link to update the payment method You can specify the customer\'s email or phone number, the preferred communication channel (email or SMS), and the language for the message. * @summary Send Subscription Status * @param {string} id The subscription ID * @param {SendSubscriptionStatusRequest} [sendSubscriptionStatusRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendStatus: (id: string, sendSubscriptionStatusRequest?: SendSubscriptionStatusRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; /** * Updates the configuration of an existing subscription. **Modifiable Parameters**: - Billing information (amount, interval, intervalCount, description, allowedPaymentMethods) - Customer details (contact information, billing/shipping addresses) - Subscription settings (cancelAtPeriodEnd, pauseAtPeriodEnd, skipIntervalCount) - Metadata (for your internal tracking) **Update Effects**: - Amount changes apply to the next billing cycle - Interval changes apply from the next period, leaving the current one to run out - Setting `prorate` to true settles the price difference immediately instead, and an interval change then restarts the billing period from now - `nextPaymentAt` moves the next charge date on its own, leaving the price alone. With `prorate` it also settles the time that moves: later charges for it, earlier refunds it - Customer information updates take effect immediately - Setting `cancelAtPeriodEnd` to true will end the subscription after the current period - Setting `pauseAtPeriodEnd` to true will pause billing after the current period - Setting `skipIntervalCount` skips billing for the specified number of intervals without changing subscription status **Note**: The currency cannot be changed once a subscription is created. To change it, cancel the subscription and create a new one. * @summary Update Subscription * @param {string} id The subscription ID * @param {UpdateSubscriptionRequest} updateSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update: (id: string, updateSubscriptionRequest: UpdateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig) => Promise; }; /** * SubscriptionsApi - functional programming interface * @export */ declare const SubscriptionsApiFp: (configuration?: Configuration) => { /** * Activates a subscription by attaching a payment method and initiating the billing cycle. **Activation Process**: 1. This endpoint transitions a `PENDING` subscription to `ACTIVE` status 2. An initial payment is created to validate the payment method: - For regular subscriptions: First billing cycle payment is processed immediately - For trial subscriptions: A zero-amount payment is created to verify the payment method **Payment Method Updates**: If the subscription is already active, this endpoint can be used to update the payment method. The update process creates a zero-amount payment to verify the new payment method works correctly. **Important Notes**: - Subscription billing begins immediately upon successful activation (unless in trial period) - The payment method provided will be used for all future recurring charges - Activation failures (due to invalid payment method) will keep the subscription in `PENDING` status - You can specify `allowedPaymentMethods` to restrict which payment methods (e.g., `card`, `bizum`) are accepted for the subscription * @summary Activate Subscription * @param {string} id The subscription ID * @param {ActivateSubscriptionRequest} [activateSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate(id: string, activateSubscriptionRequest?: ActivateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Cancels an active subscription, permanently stopping the billing cycle. **Cancellation Effects**: - The subscription status changes to `CANCELED` - No further charges will be processed - Access to subscription services typically ends immediately or at period end (depending on your business rules) **Important Notes**: - Cancellation is permanent and cannot be undone - To restart service, a new subscription must be created - Consider using `pauseAtPeriodEnd` or `cancelAtPeriodEnd` for softer transitions Use this endpoint when a customer wishes to completely terminate their subscription. * @summary Cancel Subscription * @param {string} id The subscription ID * @param {CancelSubscriptionRequest} [cancelSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel(id: string, cancelSubscriptionRequest?: CancelSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Creates a new subscription with the specified parameters. **Subscription Lifecycle**: 1. When first created, the subscription has a `PENDING` status 2. To initiate billing, you must call the [activate endpoint](https://docs.monei.com/apis/rest/subscriptions-activate/) with payment details 3. Once activated, the subscription will automatically bill according to the configured interval **Key Configuration Parameters**: - **Billing settings**: Amount, currency, interval (daily, weekly, monthly, yearly) - **Schedule customization**: Interval count, trial period duration - **Trial pricing**: Offer a free trial with `trialPeriodDays`/`trialPeriodEnd` (no charge until the trial ends), or discounted introductory pricing with `trialAmount` + `trialIntervalCount` (the `trialAmount` is charged each billing cycle for that many cycles, then the regular `amount` applies). `trialAmount` can also be combined with `trialPeriodDays`/`trialPeriodEnd` to charge it once at activation for the whole trial period. `trialIntervalCount` requires `trialAmount` and cannot be combined with `trialPeriodDays`/`trialPeriodEnd` **Example — 5 EUR for the first 3 months, then 10 EUR/month**: ```json { \"amount\": 1000, \"currency\": \"EUR\", \"interval\": \"month\", \"intervalCount\": 1, \"trialAmount\": 500, \"trialIntervalCount\": 3 } ``` The customer pays 5.00 EUR at activation and for the next two monthly cycles (3 discounted cycles in total), then 10.00 EUR every month. - **Allowed payment methods**: An array of strings specifying which payment methods are allowed for this subscription (e.g., `card`, `bizum`) - **Customer information**: Contact details, billing and shipping addresses - **Communication**: Callback URLs for webhook notifications about subscription events **Best Practices**: - Set clear, descriptive names for subscriptions to help with identification - Configure appropriate webhook notifications to monitor subscription status changes - Consider offering trial periods to increase customer conversion rates - Use metadata to store additional information relevant to your business logic * @summary Create Subscription * @param {CreateSubscriptionRequest} createSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createSubscriptionRequest: CreateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Retrieves the complete details of an existing subscription by its unique ID. This endpoint returns comprehensive information about the subscription, including: - Current status and lifecycle details (active, paused, canceled) - Billing configuration (amount, currency, interval) - Schedule information (current period, next payment date) - Customer and payment method details - Payment history (including last payment status) - Trial period information (if applicable) Use this endpoint to check subscription status, verify billing details, or retrieve information needed for customer support inquiries. * @summary Get Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Pauses an active subscription, temporarily halting the billing cycle. **Pause Effects**: - Billing is immediately suspended - The subscription status changes to `PAUSED` - No charges will be processed while the subscription remains paused - The current billing period end date remains unchanged **Use Cases**: - Temporary service interruptions - Customer vacation or absence periods - Account maintenance or dispute resolution To resume billing, use the [resume endpoint](https://docs.monei.com/apis/rest/subscriptions-resume/). * @summary Pause Subscription * @param {string} id The subscription ID * @param {PauseSubscriptionRequest} [pauseSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ pause(id: string, pauseSubscriptionRequest?: PauseSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Calculate what a prorated change to a subscription would settle, without applying it. Send the `amount`, `interval`, `intervalCount` or `nextPaymentAt` you intend to set. The response reports the credit for unused time, the charge for the new price or the extra time, and the net difference that would move. Nothing is charged, refunded or stored. Use this to show a customer the cost of a plan change, or of moving their next charge date, before they confirm it. Then apply the change with [Update Subscription](https://docs.monei.com/apis/rest/subscriptions-update/) and `prorate: true`. The figures are an estimate. Applying the change recalculates them at that moment, so a preview taken much earlier can differ. The same validation runs here as on the update, so a change this endpoint rejects would also be rejected when applied. * @summary Preview Subscription Update * @param {string} id The subscription ID * @param {PreviewSubscriptionUpdateRequest} previewSubscriptionUpdateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ preview(id: string, previewSubscriptionUpdateRequest: PreviewSubscriptionUpdateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Resumes a previously paused subscription, reactivating the billing cycle. **Resume Effects**: - Billing is immediately reactivated - The subscription status changes from `PAUSED` to `ACTIVE` - The next billing date is recalculated based on the current date - Regular charging schedule resumes according to the subscription interval **Important Notes**: - No immediate charge is created when resuming (billing continues on next scheduled date) - Any pause duration is added to the current billing period, maintaining the expected number of billing cycles - If a significant time has passed, verify that the payment method is still valid * @summary Resume Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ resume(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Sends a subscription activation link to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The subscription activation link allows customers to complete their subscription setup by providing payment details on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the subscription record. * @summary Send Subscription Link * @param {string} id The subscription ID * @param {SendSubscriptionLinkRequest} [sendSubscriptionLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink(id: string, sendSubscriptionLinkRequest?: SendSubscriptionLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Sends subscription status information to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following statuses:** - Active - Trialing - Past due **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Status is sent via email - If customer phone is available: Status is sent via WhatsApp - If WhatsApp delivery fails: Status is sent via SMS as a fallback The status notification includes subscription details such as current status, upcoming payments, and recent changes. If no customer contact information is provided, the system will use the details stored in the subscription record. **Email notifications include contextual action links based on subscription status:** - For past due subscriptions: A link to reactivate the subscription - For active and trialing subscriptions: A link to update the payment method You can specify the customer\'s email or phone number, the preferred communication channel (email or SMS), and the language for the message. * @summary Send Subscription Status * @param {string} id The subscription ID * @param {SendSubscriptionStatusRequest} [sendSubscriptionStatusRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendStatus(id: string, sendSubscriptionStatusRequest?: SendSubscriptionStatusRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; /** * Updates the configuration of an existing subscription. **Modifiable Parameters**: - Billing information (amount, interval, intervalCount, description, allowedPaymentMethods) - Customer details (contact information, billing/shipping addresses) - Subscription settings (cancelAtPeriodEnd, pauseAtPeriodEnd, skipIntervalCount) - Metadata (for your internal tracking) **Update Effects**: - Amount changes apply to the next billing cycle - Interval changes apply from the next period, leaving the current one to run out - Setting `prorate` to true settles the price difference immediately instead, and an interval change then restarts the billing period from now - `nextPaymentAt` moves the next charge date on its own, leaving the price alone. With `prorate` it also settles the time that moves: later charges for it, earlier refunds it - Customer information updates take effect immediately - Setting `cancelAtPeriodEnd` to true will end the subscription after the current period - Setting `pauseAtPeriodEnd` to true will pause billing after the current period - Setting `skipIntervalCount` skips billing for the specified number of intervals without changing subscription status **Note**: The currency cannot be changed once a subscription is created. To change it, cancel the subscription and create a new one. * @summary Update Subscription * @param {string} id The subscription ID * @param {UpdateSubscriptionRequest} updateSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateSubscriptionRequest: UpdateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise<(axios?: axios_d_exports.AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * SubscriptionsApi - factory interface * @export */ declare const SubscriptionsApiFactory: (configuration?: Configuration, basePath?: string, axios?: axios_d_exports.AxiosInstance) => { /** * Activates a subscription by attaching a payment method and initiating the billing cycle. **Activation Process**: 1. This endpoint transitions a `PENDING` subscription to `ACTIVE` status 2. An initial payment is created to validate the payment method: - For regular subscriptions: First billing cycle payment is processed immediately - For trial subscriptions: A zero-amount payment is created to verify the payment method **Payment Method Updates**: If the subscription is already active, this endpoint can be used to update the payment method. The update process creates a zero-amount payment to verify the new payment method works correctly. **Important Notes**: - Subscription billing begins immediately upon successful activation (unless in trial period) - The payment method provided will be used for all future recurring charges - Activation failures (due to invalid payment method) will keep the subscription in `PENDING` status - You can specify `allowedPaymentMethods` to restrict which payment methods (e.g., `card`, `bizum`) are accepted for the subscription * @summary Activate Subscription * @param {string} id The subscription ID * @param {ActivateSubscriptionRequest} [activateSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ activate(id: string, activateSubscriptionRequest?: ActivateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Cancels an active subscription, permanently stopping the billing cycle. **Cancellation Effects**: - The subscription status changes to `CANCELED` - No further charges will be processed - Access to subscription services typically ends immediately or at period end (depending on your business rules) **Important Notes**: - Cancellation is permanent and cannot be undone - To restart service, a new subscription must be created - Consider using `pauseAtPeriodEnd` or `cancelAtPeriodEnd` for softer transitions Use this endpoint when a customer wishes to completely terminate their subscription. * @summary Cancel Subscription * @param {string} id The subscription ID * @param {CancelSubscriptionRequest} [cancelSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ cancel(id: string, cancelSubscriptionRequest?: CancelSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Creates a new subscription with the specified parameters. **Subscription Lifecycle**: 1. When first created, the subscription has a `PENDING` status 2. To initiate billing, you must call the [activate endpoint](https://docs.monei.com/apis/rest/subscriptions-activate/) with payment details 3. Once activated, the subscription will automatically bill according to the configured interval **Key Configuration Parameters**: - **Billing settings**: Amount, currency, interval (daily, weekly, monthly, yearly) - **Schedule customization**: Interval count, trial period duration - **Trial pricing**: Offer a free trial with `trialPeriodDays`/`trialPeriodEnd` (no charge until the trial ends), or discounted introductory pricing with `trialAmount` + `trialIntervalCount` (the `trialAmount` is charged each billing cycle for that many cycles, then the regular `amount` applies). `trialAmount` can also be combined with `trialPeriodDays`/`trialPeriodEnd` to charge it once at activation for the whole trial period. `trialIntervalCount` requires `trialAmount` and cannot be combined with `trialPeriodDays`/`trialPeriodEnd` **Example — 5 EUR for the first 3 months, then 10 EUR/month**: ```json { \"amount\": 1000, \"currency\": \"EUR\", \"interval\": \"month\", \"intervalCount\": 1, \"trialAmount\": 500, \"trialIntervalCount\": 3 } ``` The customer pays 5.00 EUR at activation and for the next two monthly cycles (3 discounted cycles in total), then 10.00 EUR every month. - **Allowed payment methods**: An array of strings specifying which payment methods are allowed for this subscription (e.g., `card`, `bizum`) - **Customer information**: Contact details, billing and shipping addresses - **Communication**: Callback URLs for webhook notifications about subscription events **Best Practices**: - Set clear, descriptive names for subscriptions to help with identification - Configure appropriate webhook notifications to monitor subscription status changes - Consider offering trial periods to increase customer conversion rates - Use metadata to store additional information relevant to your business logic * @summary Create Subscription * @param {CreateSubscriptionRequest} createSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ create(createSubscriptionRequest: CreateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Retrieves the complete details of an existing subscription by its unique ID. This endpoint returns comprehensive information about the subscription, including: - Current status and lifecycle details (active, paused, canceled) - Billing configuration (amount, currency, interval) - Schedule information (current period, next payment date) - Customer and payment method details - Payment history (including last payment status) - Trial period information (if applicable) Use this endpoint to check subscription status, verify billing details, or retrieve information needed for customer support inquiries. * @summary Get Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Pauses an active subscription, temporarily halting the billing cycle. **Pause Effects**: - Billing is immediately suspended - The subscription status changes to `PAUSED` - No charges will be processed while the subscription remains paused - The current billing period end date remains unchanged **Use Cases**: - Temporary service interruptions - Customer vacation or absence periods - Account maintenance or dispute resolution To resume billing, use the [resume endpoint](https://docs.monei.com/apis/rest/subscriptions-resume/). * @summary Pause Subscription * @param {string} id The subscription ID * @param {PauseSubscriptionRequest} [pauseSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ pause(id: string, pauseSubscriptionRequest?: PauseSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Calculate what a prorated change to a subscription would settle, without applying it. Send the `amount`, `interval`, `intervalCount` or `nextPaymentAt` you intend to set. The response reports the credit for unused time, the charge for the new price or the extra time, and the net difference that would move. Nothing is charged, refunded or stored. Use this to show a customer the cost of a plan change, or of moving their next charge date, before they confirm it. Then apply the change with [Update Subscription](https://docs.monei.com/apis/rest/subscriptions-update/) and `prorate: true`. The figures are an estimate. Applying the change recalculates them at that moment, so a preview taken much earlier can differ. The same validation runs here as on the update, so a change this endpoint rejects would also be rejected when applied. * @summary Preview Subscription Update * @param {string} id The subscription ID * @param {PreviewSubscriptionUpdateRequest} previewSubscriptionUpdateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ preview(id: string, previewSubscriptionUpdateRequest: PreviewSubscriptionUpdateRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Resumes a previously paused subscription, reactivating the billing cycle. **Resume Effects**: - Billing is immediately reactivated - The subscription status changes from `PAUSED` to `ACTIVE` - The next billing date is recalculated based on the current date - Regular charging schedule resumes according to the subscription interval **Important Notes**: - No immediate charge is created when resuming (billing continues on next scheduled date) - Any pause duration is added to the current billing period, maintaining the expected number of billing cycles - If a significant time has passed, verify that the payment method is still valid * @summary Resume Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} */ resume(id: string, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Sends a subscription activation link to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The subscription activation link allows customers to complete their subscription setup by providing payment details on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the subscription record. * @summary Send Subscription Link * @param {string} id The subscription ID * @param {SendSubscriptionLinkRequest} [sendSubscriptionLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendLink(id: string, sendSubscriptionLinkRequest?: SendSubscriptionLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Sends subscription status information to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following statuses:** - Active - Trialing - Past due **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Status is sent via email - If customer phone is available: Status is sent via WhatsApp - If WhatsApp delivery fails: Status is sent via SMS as a fallback The status notification includes subscription details such as current status, upcoming payments, and recent changes. If no customer contact information is provided, the system will use the details stored in the subscription record. **Email notifications include contextual action links based on subscription status:** - For past due subscriptions: A link to reactivate the subscription - For active and trialing subscriptions: A link to update the payment method You can specify the customer\'s email or phone number, the preferred communication channel (email or SMS), and the language for the message. * @summary Send Subscription Status * @param {string} id The subscription ID * @param {SendSubscriptionStatusRequest} [sendSubscriptionStatusRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} */ sendStatus(id: string, sendSubscriptionStatusRequest?: SendSubscriptionStatusRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; /** * Updates the configuration of an existing subscription. **Modifiable Parameters**: - Billing information (amount, interval, intervalCount, description, allowedPaymentMethods) - Customer details (contact information, billing/shipping addresses) - Subscription settings (cancelAtPeriodEnd, pauseAtPeriodEnd, skipIntervalCount) - Metadata (for your internal tracking) **Update Effects**: - Amount changes apply to the next billing cycle - Interval changes apply from the next period, leaving the current one to run out - Setting `prorate` to true settles the price difference immediately instead, and an interval change then restarts the billing period from now - `nextPaymentAt` moves the next charge date on its own, leaving the price alone. With `prorate` it also settles the time that moves: later charges for it, earlier refunds it - Customer information updates take effect immediately - Setting `cancelAtPeriodEnd` to true will end the subscription after the current period - Setting `pauseAtPeriodEnd` to true will pause billing after the current period - Setting `skipIntervalCount` skips billing for the specified number of intervals without changing subscription status **Note**: The currency cannot be changed once a subscription is created. To change it, cancel the subscription and create a new one. * @summary Update Subscription * @param {string} id The subscription ID * @param {UpdateSubscriptionRequest} updateSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} */ update(id: string, updateSubscriptionRequest: UpdateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): AxiosPromise; }; /** * SubscriptionsApi - object-oriented interface * @export * @class SubscriptionsApi * @extends {BaseAPI} */ declare class SubscriptionsApi extends BaseAPI { /** * Activates a subscription by attaching a payment method and initiating the billing cycle. **Activation Process**: 1. This endpoint transitions a `PENDING` subscription to `ACTIVE` status 2. An initial payment is created to validate the payment method: - For regular subscriptions: First billing cycle payment is processed immediately - For trial subscriptions: A zero-amount payment is created to verify the payment method **Payment Method Updates**: If the subscription is already active, this endpoint can be used to update the payment method. The update process creates a zero-amount payment to verify the new payment method works correctly. **Important Notes**: - Subscription billing begins immediately upon successful activation (unless in trial period) - The payment method provided will be used for all future recurring charges - Activation failures (due to invalid payment method) will keep the subscription in `PENDING` status - You can specify `allowedPaymentMethods` to restrict which payment methods (e.g., `card`, `bizum`) are accepted for the subscription * @summary Activate Subscription * @param {string} id The subscription ID * @param {ActivateSubscriptionRequest} [activateSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ activate(id: string, activateSubscriptionRequest?: ActivateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Cancels an active subscription, permanently stopping the billing cycle. **Cancellation Effects**: - The subscription status changes to `CANCELED` - No further charges will be processed - Access to subscription services typically ends immediately or at period end (depending on your business rules) **Important Notes**: - Cancellation is permanent and cannot be undone - To restart service, a new subscription must be created - Consider using `pauseAtPeriodEnd` or `cancelAtPeriodEnd` for softer transitions Use this endpoint when a customer wishes to completely terminate their subscription. * @summary Cancel Subscription * @param {string} id The subscription ID * @param {CancelSubscriptionRequest} [cancelSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ cancel(id: string, cancelSubscriptionRequest?: CancelSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Creates a new subscription with the specified parameters. **Subscription Lifecycle**: 1. When first created, the subscription has a `PENDING` status 2. To initiate billing, you must call the [activate endpoint](https://docs.monei.com/apis/rest/subscriptions-activate/) with payment details 3. Once activated, the subscription will automatically bill according to the configured interval **Key Configuration Parameters**: - **Billing settings**: Amount, currency, interval (daily, weekly, monthly, yearly) - **Schedule customization**: Interval count, trial period duration - **Trial pricing**: Offer a free trial with `trialPeriodDays`/`trialPeriodEnd` (no charge until the trial ends), or discounted introductory pricing with `trialAmount` + `trialIntervalCount` (the `trialAmount` is charged each billing cycle for that many cycles, then the regular `amount` applies). `trialAmount` can also be combined with `trialPeriodDays`/`trialPeriodEnd` to charge it once at activation for the whole trial period. `trialIntervalCount` requires `trialAmount` and cannot be combined with `trialPeriodDays`/`trialPeriodEnd` **Example — 5 EUR for the first 3 months, then 10 EUR/month**: ```json { \"amount\": 1000, \"currency\": \"EUR\", \"interval\": \"month\", \"intervalCount\": 1, \"trialAmount\": 500, \"trialIntervalCount\": 3 } ``` The customer pays 5.00 EUR at activation and for the next two monthly cycles (3 discounted cycles in total), then 10.00 EUR every month. - **Allowed payment methods**: An array of strings specifying which payment methods are allowed for this subscription (e.g., `card`, `bizum`) - **Customer information**: Contact details, billing and shipping addresses - **Communication**: Callback URLs for webhook notifications about subscription events **Best Practices**: - Set clear, descriptive names for subscriptions to help with identification - Configure appropriate webhook notifications to monitor subscription status changes - Consider offering trial periods to increase customer conversion rates - Use metadata to store additional information relevant to your business logic * @summary Create Subscription * @param {CreateSubscriptionRequest} createSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ create(createSubscriptionRequest: CreateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Retrieves the complete details of an existing subscription by its unique ID. This endpoint returns comprehensive information about the subscription, including: - Current status and lifecycle details (active, paused, canceled) - Billing configuration (amount, currency, interval) - Schedule information (current period, next payment date) - Customer and payment method details - Payment history (including last payment status) - Trial period information (if applicable) Use this endpoint to check subscription status, verify billing details, or retrieve information needed for customer support inquiries. * @summary Get Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ get(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Pauses an active subscription, temporarily halting the billing cycle. **Pause Effects**: - Billing is immediately suspended - The subscription status changes to `PAUSED` - No charges will be processed while the subscription remains paused - The current billing period end date remains unchanged **Use Cases**: - Temporary service interruptions - Customer vacation or absence periods - Account maintenance or dispute resolution To resume billing, use the [resume endpoint](https://docs.monei.com/apis/rest/subscriptions-resume/). * @summary Pause Subscription * @param {string} id The subscription ID * @param {PauseSubscriptionRequest} [pauseSubscriptionRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ pause(id: string, pauseSubscriptionRequest?: PauseSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Calculate what a prorated change to a subscription would settle, without applying it. Send the `amount`, `interval`, `intervalCount` or `nextPaymentAt` you intend to set. The response reports the credit for unused time, the charge for the new price or the extra time, and the net difference that would move. Nothing is charged, refunded or stored. Use this to show a customer the cost of a plan change, or of moving their next charge date, before they confirm it. Then apply the change with [Update Subscription](https://docs.monei.com/apis/rest/subscriptions-update/) and `prorate: true`. The figures are an estimate. Applying the change recalculates them at that moment, so a preview taken much earlier can differ. The same validation runs here as on the update, so a change this endpoint rejects would also be rejected when applied. * @summary Preview Subscription Update * @param {string} id The subscription ID * @param {PreviewSubscriptionUpdateRequest} previewSubscriptionUpdateRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ preview(id: string, previewSubscriptionUpdateRequest: PreviewSubscriptionUpdateRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Resumes a previously paused subscription, reactivating the billing cycle. **Resume Effects**: - Billing is immediately reactivated - The subscription status changes from `PAUSED` to `ACTIVE` - The next billing date is recalculated based on the current date - Regular charging schedule resumes according to the subscription interval **Important Notes**: - No immediate charge is created when resuming (billing continues on next scheduled date) - Any pause duration is added to the current billing period, maintaining the expected number of billing cycles - If a significant time has passed, verify that the payment method is still valid * @summary Resume Subscription * @param {string} id The subscription ID * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ resume(id: string, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Sends a subscription activation link to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following status:** - Pending **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Link is sent via email - If customer phone is available: Link is sent via WhatsApp - If WhatsApp delivery fails: Link is sent via SMS as a fallback The subscription activation link allows customers to complete their subscription setup by providing payment details on the secure MONEI payment page. If no customer contact information is provided, the system will use the details stored in the subscription record. * @summary Send Subscription Link * @param {string} id The subscription ID * @param {SendSubscriptionLinkRequest} [sendSubscriptionLinkRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ sendLink(id: string, sendSubscriptionLinkRequest?: SendSubscriptionLinkRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Sends subscription status information to the customer through their preferred communication channel. **This API can only be used for subscriptions with the following statuses:** - Active - Trialing - Past due **Delivery channels are automatically selected based on available customer information:** - If customer email is available: Status is sent via email - If customer phone is available: Status is sent via WhatsApp - If WhatsApp delivery fails: Status is sent via SMS as a fallback The status notification includes subscription details such as current status, upcoming payments, and recent changes. If no customer contact information is provided, the system will use the details stored in the subscription record. **Email notifications include contextual action links based on subscription status:** - For past due subscriptions: A link to reactivate the subscription - For active and trialing subscriptions: A link to update the payment method You can specify the customer\'s email or phone number, the preferred communication channel (email or SMS), and the language for the message. * @summary Send Subscription Status * @param {string} id The subscription ID * @param {SendSubscriptionStatusRequest} [sendSubscriptionStatusRequest] * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ sendStatus(id: string, sendSubscriptionStatusRequest?: SendSubscriptionStatusRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; /** * Updates the configuration of an existing subscription. **Modifiable Parameters**: - Billing information (amount, interval, intervalCount, description, allowedPaymentMethods) - Customer details (contact information, billing/shipping addresses) - Subscription settings (cancelAtPeriodEnd, pauseAtPeriodEnd, skipIntervalCount) - Metadata (for your internal tracking) **Update Effects**: - Amount changes apply to the next billing cycle - Interval changes apply from the next period, leaving the current one to run out - Setting `prorate` to true settles the price difference immediately instead, and an interval change then restarts the billing period from now - `nextPaymentAt` moves the next charge date on its own, leaving the price alone. With `prorate` it also settles the time that moves: later charges for it, earlier refunds it - Customer information updates take effect immediately - Setting `cancelAtPeriodEnd` to true will end the subscription after the current period - Setting `pauseAtPeriodEnd` to true will pause billing after the current period - Setting `skipIntervalCount` skips billing for the specified number of intervals without changing subscription status **Note**: The currency cannot be changed once a subscription is created. To change it, cancel the subscription and create a new one. * @summary Update Subscription * @param {string} id The subscription ID * @param {UpdateSubscriptionRequest} updateSubscriptionRequest * @param {*} [options] Override http request option. * @throws {RequiredError} * @memberof SubscriptionsApi */ update(id: string, updateSubscriptionRequest: UpdateSubscriptionRequest, options?: axios_d_exports.RawAxiosRequestConfig): Promise; } //#endregion //#region index.d.ts /** * Response structure for API exceptions returned by the MONEI API */ type ApiExceptionResponse = { status: string; statusCode: number; requestId: string; message: string; requestTime: string; }; /** * Exception class for handling MONEI API errors * Contains detailed information about the error including status, statusCode, * requestId, and requestTime for debugging and logging purposes */ declare class ApiException extends Error { status: string; statusCode: number; requestId: string; requestTime: Date; /** * Creates a new ApiException instance * @param res - The API exception response from the MONEI API */ constructor(res: ApiExceptionResponse); } /** * Main MONEI SDK client class * Provides access to MONEI's payment processing APIs including payments, * payment methods, subscriptions, and Apple Pay domain verification */ declare class Monei { private apiKey; private accountId?; private userAgent; /** Axios HTTP client instance used for API requests */ client: AxiosInstance; /** API for managing payments */ payments: PaymentsApi; /** API for managing payment methods */ paymentMethods: PaymentMethodsApi; /** API for managing subscriptions */ subscriptions: SubscriptionsApi; /** API for managing customers and their saved payment methods */ customers: CustomersApi; /** API for Apple Pay domain verification */ applePayDomain: ApplePayDomainApi; /** API for managing Apple Pay certificates */ applePayCertificate: ApplePayCertificateApi; /** API for managing Bizum */ bizum: BizumApi; /** API for creating POS auth tokens */ posAuthToken: POSAuthTokenApi; /** * Creates a new MONEI SDK client instance * @param apiKey - Your MONEI API key * @param options - Additional configuration options including accountId for acting on behalf of merchants, * userAgent for identifying your application, and any Axios request configuration */ constructor(apiKey: string, options?: AxiosRequestConfig & { accountId?: string; userAgent?: string; }); /** * Set the account ID to act on behalf of a merchant * @param accountId - The merchant's account ID * @throws {Error} When trying to set an account ID with the default User-Agent */ setAccountId(accountId: string | undefined): void; /** * Set a custom User-Agent header * @param userAgent - Custom User-Agent string to identify your application */ setUserAgent(userAgent: string): void; /** * Verify the `MONEI-Signature` header and return the parsed request body. * * The body is returned parsed as-is (not transformed). Its shape depends on * the source, so no type is assumed: a payment `callbackUrl` sends the Payment * object, while account webhooks send an event envelope `{ id, type, object, * ... }` whose `object` varies by event (payment, subscription, etc.). Pass * the expected type, e.g. `verifySignature(body, signature)` for a * payment callback. * * @param body - Raw request body as a string * @param signature - Value of the `MONEI-Signature` header * @returns The verified, parsed body (typed as `T`; `unknown` by default) * @throws {ApiException} When the signature is missing, malformed, or invalid */ verifySignature(body: string, signature: string): T; } //#endregion export { ActivateApplePayCertificateRequest, ActivateSubscriptionRequest, Address, ApiException, ApiExceptionResponse, ApplePayCertificate, ApplePayCertificateApi, ApplePayCertificateApiAxiosParamCreator, ApplePayCertificateApiFactory, ApplePayCertificateApiFp, ApplePayCertificatesRemove200Response, ApplePayDomainApi, ApplePayDomainApiAxiosParamCreator, ApplePayDomainApiFactory, ApplePayDomainApiFp, BadRequestError, BizumApi, BizumApiAxiosParamCreator, BizumApiFactory, BizumApiFp, BizumValidatePhone200Response, CancelPaymentRequest, CancelSubscriptionRequest, CapturePaymentRequest, Configuration, ConfigurationParameters, ConfirmPaymentRequest, ConfirmPaymentRequestPaymentMethod, ConfirmPaymentRequestPaymentMethodCard, ConflictError, CreateCustomerRequest, CreatePaymentRequest, CreatePosAuthTokenRequest, CreateSubscriptionRequest, Customer, CustomerPaymentMethod, CustomersApi, CustomersApiAxiosParamCreator, CustomersApiFactory, CustomersApiFp, DeletedResource, InternalServerError, Monei, NotFoundError, POSAuthTokenApi, POSAuthTokenApiAxiosParamCreator, POSAuthTokenApiFactory, POSAuthTokenApiFp, PauseSubscriptionRequest, Payment, PaymentBillingDetails, PaymentCancellationReason, PaymentCustomer, PaymentLastRefundReason, PaymentMessageChannel, PaymentMessageLanguage, PaymentMethods, PaymentMethodsApi, PaymentMethodsApiAxiosParamCreator, PaymentMethodsApiFactory, PaymentMethodsApiFp, PaymentMethodsMetadata, PaymentMethodsMetadataAlipay, PaymentMethodsMetadataApplePay, PaymentMethodsMetadataBancontact, PaymentMethodsMetadataBizum, PaymentMethodsMetadataBlik, PaymentMethodsMetadataCard, PaymentMethodsMetadataClickToPay, PaymentMethodsMetadataClickToPayDiscover, PaymentMethodsMetadataClickToPayMastercard, PaymentMethodsMetadataClickToPayVisa, PaymentMethodsMetadataEps, PaymentMethodsMetadataGiropay, PaymentMethodsMetadataGooglePay, PaymentMethodsMetadataIDeal, PaymentMethodsMetadataKlarna, PaymentMethodsMetadataMbway, PaymentMethodsMetadataSepa, PaymentMethodsMetadataSofort, PaymentMethodsMetadataTrustly, PaymentMethodsMethods, PaymentNextAction, PaymentNextActionTypeEnum, PaymentPaymentMethod, PaymentPaymentMethodBizum, PaymentPaymentMethodBizumInput, PaymentPaymentMethodCard, PaymentPaymentMethodCardBrandEnum, PaymentPaymentMethodCardInput, PaymentPaymentMethodCardThreeDSecureFlowEnum, PaymentPaymentMethodCardTokenizationMethodEnum, PaymentPaymentMethodCardTypeEnum, PaymentPaymentMethodInput, PaymentPaymentMethodKlarna, PaymentPaymentMethodKlarnaAuthPaymentMethodEnum, PaymentPaymentMethodKlarnaBillingCategoryEnum, PaymentPaymentMethodMbway, PaymentPaymentMethodMethodEnum, PaymentPaymentMethodPaypal, PaymentPaymentMethodSepa, PaymentPaymentMethodTrustly, PaymentPaymentMethods, PaymentRefundReason, PaymentSequence, PaymentSequenceRecurring, PaymentSequenceTypeEnum, PaymentSessionDetails, PaymentShippingDetails, PaymentShop, PaymentStatus, PaymentTraceDetails, PaymentTransactionType, PaymentsApi, PaymentsApiAxiosParamCreator, PaymentsApiFactory, PaymentsApiFp, PosAuthTokenCreate200Response, PreviewSubscriptionUpdateRequest, RecurringPaymentRequest, RefundPaymentRequest, RegisterApplePayDomainRequest, SendPaymentLinkRequest, SendPaymentReceiptRequest, SendPaymentRequestRequest, SendSubscriptionLinkRequest, SendSubscriptionLinkRequestChannelEnum, SendSubscriptionStatusRequest, SendSubscriptionStatusRequestChannelEnum, ServiceUnavailableError, Subscription, SubscriptionInterval, SubscriptionLastPayment, SubscriptionLastProration, SubscriptionPaymentMethod, SubscriptionPaymentMethodCard, SubscriptionPaymentMethodCardBrandEnum, SubscriptionPaymentMethodCardTypeEnum, SubscriptionPaymentMethodMethodEnum, SubscriptionPaymentMethods, SubscriptionRetrySchedule, SubscriptionRetryScheduleInner, SubscriptionRetryScheduleInnerIntervalEnum, SubscriptionStatus, SubscriptionUpdatePreview, SubscriptionUpdatePreviewDirectionEnum, SubscriptionsApi, SubscriptionsApiAxiosParamCreator, SubscriptionsApiFactory, SubscriptionsApiFp, UnauthorizedError, UnprocessableEntityError, UpdateApplePayCertificateRequest, UpdateCustomerRequest, UpdateSubscriptionRequest, ValidateBizumPhoneRequest }; //# sourceMappingURL=index.d.cts.map