Saltar para o conteúdo
Transferir a descrição da OpenAPI
Visão geral
Easypay Documentation
Licença
Idiomas
Servidores
Sandbox
https://api.test.easypay.pt/2.0
Production
https://api.prod.easypay.pt/2.0

Create and manage one-time payment transactions

Operações

Pedido

Full report with all the single payments from your Account

Segurança
accountId and apiKey
Consulta
pageinteger

Specifies the page number of the results to retrieve. This parameter is used for paginating through a collection of records, allowing the client to navigate to different pages of the dataset. The value must be a positive integer (e.g., "1" for the first page).

Padrão 1
Exemplo: page=1
records_per_pageinteger

Specifies the number of records to retrieve per page. This parameter is used for controlling the size of each page in a paginated collection of records. The value must be a positive integer, determining how many records are displayed on each page (e.g., "20" for 20 records per page).

Padrão 20
Exemplo: records_per_page=20
typestring

Filter by type of financial operation being performed. Possible values are "Sale" (a complete transaction where funds are immediately captured) or "Authorisation" (a temporary hold on funds pending a future capture).

Enum"sale""authorisation"
Exemplo: type=sale
expiration_timestring

Filter records by expiration datetime interval. Format: interval(YYYY-MM-DD HH:MM,YYYY-MM-DD HH:MM)

Exemplo: expiration_time=interval(2006-01-02 15:04,2006-01-02 15:04)
methodstring

Filter by payment method used in the transaction.

Enum"cc""vi""dd""mb""mbw""ap""gp""sc""uf"
Exemplo: method=mb
customerstring

A user-defined identifier used to filter the customers. This parameter allows the client to specify a key to retrieve records or transactions that match the provided key. The value is a string and may not be unique, as it is determined by the user.

Exemplo: customer=01J32EDWGNX94XMWP8PWB23KBK
idstring(uuid)

Filter by the unique identifier for the resource. Typically formatted as a UUID (Universally Unique Identifier).

Exemplo: id=bb3e7e60-20f3-4208-9b21-64c635a51f42
keystring

A user-defined identifier used to filter the results. This parameter allows the client to specify a key to retrieve records or transactions that match the provided key. The value is a string and may not be unique, as it is determined by the user.

Exemplo: key=01J32EESEC1Z543P7J3PKSF1Q9
valuenumber(double)

Filter records by the exact transaction amount.

Exemplo: value=10.32
created_atstring

Filter records by creation datetime interval in UTC. Maximum allowed range is 30 days. Format: interval(YYYY-MM-DD HH:MM,YYYY-MM-DD HH:MM).

Exemplo: created_at=interval(2006-01-02 15:04,2006-01-02 15:04)
curl -i -X GET \
  'https://api.test.easypay.pt/2.0/single?page=1&records_per_page=20&type=sale&expiration_time=interval%282006-01-02+15%3A04%2C2006-01-02+15%3A04%29&method=mb&customer=01J32EDWGNX94XMWP8PWB23KBK&id=bb3e7e60-20f3-4208-9b21-64c635a51f42&key=01J32EESEC1Z543P7J3PKSF1Q9&value=10.32&created_at=interval%282006-01-02+15%3A04%2C2006-01-02+15%3A04%29' \
  -H 'AccountId: 2b0f63e2-9fb5-4e52-aca0-b4bf0339bbe6' \
  -H 'ApiKey: eae4aa59-8e5b-4ec2-887d-b02768481a92'

Respostas

OK

Corpoapplication/json
metaobject(meta)

Metadata object containing pagination and result information for list responses.

dataArray of objects(single)
Resposta
application/json
{ "meta": { "page": {}, "records": {}, "links": {} }, "data": [ {} ] }

Pedido

Creates a Single Payment

Segurança
accountId and apiKey
Corpoapplication/jsonobrigatório

Configuration object to generate a single payment

typestring

Specifies the type of financial operation being performed.

TYPEDESCRIPTION
salea complete transaction where funds are immediately captured.
authorisationa temporary hold on funds pending a future capture.
Enum"sale""authorisation"
captureobject(create-capture)

The Capture object contains all the necessary information for executing a fund capture action. It defines how and where the funds should be routed upon capturing a transaction. This object is essential for finalizing transactions and ensuring the correct allocation of funds. Object required when the operation type is Sale.

currencystring

ISO 4217 currency code. If not specified, the default currency is set to EUR.

Exemplo: "EUR"
valuenumber(double)[ 0.5 .. 999999.99 ]obrigatório

The monetary amount for the transaction. This field specifies the value of the payment in the designated currency. It must be a positive decimal number representing the exact amount to be processed.

Exemplo: 17.5
methodstringobrigatório

Enumerates the possible values for the payment method used in the transaction. This field helps to identify the selected payment method. Possible values include:

METHODDESCRIPTION
CCCredit Card
VIDigital IBAN
DDDirect Debit
MBMultibanco
MBWMBWay
GPGoogle Pay*
APApple Pay*
SWSamsung Wallet*

*payment only available through checkout yet

Enum"CC""VI""DD""MB""MBW""GP""AP""SW"
keystring<= 50 characters

A customizable text field for users to input their own identifier for the resource. This can be any string that helps the user uniquely identify or reference the resource in their own system.

Exemplo: "Payment of Invoice Nº 1982652"
customerobject(customer)

The Customer object contains the necessary details about the customer involved in the transaction. This includes identification information, contact details, and preferences. All fields are optional unless specified otherwise.

multibancoobject

An object that holds the details specific to a Multibanco transaction.

sdd_mandateobject(sdd-mandate)

The SDD Mandate object contains the necessary fields to create a SEPA Direct Debit mandate. This object ensures that all required information is provided to authorize and process SEPA Direct Debit transactions. Object required when method is Direct Debit.

notificationobject(notification)

Notification settings for payment methods.

expiration_timestringObsoleto

The last possible time to make the payment. Applicable in Multibanco payments. This field is deprecated, use multibanco.expiration_time instead.

Exemplo: "2017-12-12 16:05"
curl -i -X POST \
  https://api.test.easypay.pt/2.0/single \
  -H 'AccountId: 2b0f63e2-9fb5-4e52-aca0-b4bf0339bbe6' \
  -H 'ApiKey: eae4aa59-8e5b-4ec2-887d-b02768481a92' \
  -H 'Content-Type: application/json' \
  -d '{
    "customer": {
      "name": "Customer Example",
      "email": "customer@example.com",
      "phone": "911234567",
      "phone_indicative": "+351",
      "key": "customer Key Example",
      "language": "EN"
    },
    "key": "merchant identification key Example",
    "value": 15.5,
    "method": "MB",
    "capture": {
      "descriptive": "transaction descriptive Example",
      "transaction_key": "transaction key Example"
    },
    "notification": {
      "customer_method_instructions_email": true
    }
  }'

Respostas

Created

Corpoapplication/json
statusstring(response-status)

Indicates the overall status of the API response. 'ok' means the request was successful, 'error' indicates there was a problem.

Enum"ok""error"
messageArray of strings(response-message)

An array of messages providing details about the response status. These messages give additional context about the operation result.

idstring(uuid)
Exemplo: "c6056234-a3f9-42de-b944-3ed793fcb6bb"
methodobject(method-on-post-response)

Method information returned in POST responses after creating a payment

customerobject
captureobject
multibancoobject(response-multibanco)

An object that holds the details specific to a Multibanco transaction response.

notificationobject(notification)

Notification settings for payment methods.

Resposta
application/json
{ "status": "ok", "message": [ "Your request was successfully created" ], "id": "ed7f8dac-0ea2-4846-8433-f5f8b0e70ed7", "method": { "type": "dd", "status": "pending", "entity": "21098", "reference": "503564027", "sdd_mandate": {} }, "customer": { "id": "2544ce48-ccec-465e-9722-d42ccf0aa640" }, "capture": { "id": "c6101a8b-b8c6-44a7-b128-bef8888e14d7" } }

Pedido

Retrieve a single payment details

Segurança
accountId and apiKey
Caminho
idstring(uuid)obrigatório

Resource Identification

curl -i -X GET \
  'https://api.test.easypay.pt/2.0/single/{id}' \
  -H 'AccountId: 2b0f63e2-9fb5-4e52-aca0-b4bf0339bbe6' \
  -H 'ApiKey: eae4aa59-8e5b-4ec2-887d-b02768481a92'

Respostas

OK

Corpoapplication/json
idstring
Exemplo: "c6056234-a3f9-42de-b944-3ed793fcb6bb"
created_atstring
capturesArray of objects(SingleCaptureFull)
keystring
Exemplo: "Payment of Invoice Nº 1982652"
descriptivestring(descriptive)<= 255 characters

A text field that describes the transaction as it will appear on the end user's account statement. This is typically used to provide clear, recognizable information about the payment, such as "Payment of Invoice Nº 1982652" or "Ticket for Queen".

valuenumber(double)(value)[ 0.5 .. 999999.99 ]

The monetary amount for the transaction. This field specifies the value of the payment in the designated currency. It must be a positive decimal number representing the exact amount to be processed.

expiration_timestring
currencystring(currency)

ISO 4217 currency code. If not specified, the default currency is set to EUR.

Valor"EUR"
customerobject(customer)

The Customer object contains the necessary details about the customer involved in the transaction. This includes identification information, contact details, and preferences. All fields are optional unless specified otherwise.

methodobject(single-detail-method-response)
paid_atstring
transactionsArray of objects(payment-transactions)
payment_statusstring(single-payment-status)

Indicates the current status of the payment. Possible values include:

"pending": The payment is awaiting processing. "paid": The payment has been completed successfully. "authorised": The payment has been authorized but not yet captured. "error": An error occurred during the payment process. "deleted": The payment has been deleted. "failed": The payment attempt failed. "active": The payment is currently active. "voided": The payment has been voided.

Enum"pending""paid""authorised""error""deleted""failed""active"
multibancoobject(response-multibanco)

An object that holds the details specific to a Multibanco transaction response.

notificationobject(notification)

Notification settings for payment methods.

Resposta
application/json
{ "id": "c6056234-a3f9-42de-b944-3ed793fcb6bb", "created_at": "string", "captures": [ {} ], "key": "Payment of Invoice Nº 1982652", "descriptive": "Payment of Invoice Nº 1982652", "value": 17.5, "expiration_time": "string", "currency": "EUR", "customer": { "id": "649e88cf-0b78-4c36-8f99-33f5ebb812a1", "name": "John Doe", "email": "john.doe@example.com", "phone": "911234567", "phone_indicative": "+351", "fiscal_number": "PT123456789", "key": "customer Key Example", "language": "PT" }, "method": { "type": "CC", "status": "active", "sdd_mandate": {}, "card_type": "VISA", "last_four": "1234", "expiration_date": "string", "url": "https://cc.easypay.pt/v3/public/card-details/cec55ab6-bda3-4ab3-af22-04d2ad2c046a", "alias": "string", "entity": "11683", "reference": "665876931", "iban": "PT50002700000001234567833" }, "paid_at": "string", "transactions": [ {} ], "payment_status": "paid", "multibanco": { "expiration_time": "2025-09-28T12:41:08Z", "start_time": "2025-08-26T12:41:09Z", "product": "SPG" }, "notification": { "customer_method_instructions_email": true } }

Pedido

This endpoint allows for the deletion of a single payment identified by its unique ID. The DELETE operation performs the following actions based on the payment method:

  • MBWay and Credit Cards: Voids all authorizations.
  • Multibanco: Cancels the Multibanco Reference.
  • Direct Debit: Cancels the Direct Debit if the request is made before the cutoff hour(18:00 Europe/Lisbon).

This operation ensures that all associated authorizations and references are properly handled and terminated according to the specified payment method.

Segurança
accountId and apiKey
Caminho
idstring(uuid)obrigatório

Resource Identification

curl -i -X DELETE \
  'https://api.test.easypay.pt/2.0/single/{id}' \
  -H 'AccountId: 2b0f63e2-9fb5-4e52-aca0-b4bf0339bbe6' \
  -H 'ApiKey: eae4aa59-8e5b-4ec2-887d-b02768481a92'

Respostas

No Content

Resposta
Sem conteúdo

Pedido

Apply partial modifications to a single payment resource.

Segurança
accountId and apiKey
Caminho
idstring(uuid)obrigatório

Resource Identification

Corpoapplication/json
currencystring

ISO 4217 currency code. If not specified, the default currency is set to EUR.

Exemplo: "EUR"
customerobject(updatable-customer)

The Customer object contains detailed information about the customer involved in the transaction. Used for update operations where all fields are optional.

keystring(key)<= 255 characters

A customizable text field for users to input their own identifier for the resource. This can be any string that helps the user uniquely identify or reference the resource in their own system.

sdd_mandateobject(updatable-sdd-mandate)

The SDD Mandate object contains the necessary fields to update a SEPA Direct Debit mandate. All fields are optional for update operations.

expiration_timestringObsoleto
curl -i -X PATCH \
  'https://api.test.easypay.pt/2.0/single/{id}' \
  -H 'AccountId: 2b0f63e2-9fb5-4e52-aca0-b4bf0339bbe6' \
  -H 'ApiKey: eae4aa59-8e5b-4ec2-887d-b02768481a92' \
  -H 'Content-Type: application/json' \
  -d '{
    "expiration_time": "string",
    "currency": "EUR",
    "customer": {
      "name": "Jonh Doe",
      "email": "customer@example.com",
      "phone": "962496235",
      "phone_indicative": "351",
      "fiscal_number": "PT277712580",
      "key": "01J1PKR2RPHJNJQGFWGDYXY0KM",
      "language": "PT"
    },
    "key": "01J1PKR2RPHJNJQGFWGDYXY0KM",
    "sdd_mandate": {
      "iban": "PT50002700000001234567833",
      "key": "Sdd mandate Key Example",
      "name": "John Doe",
      "email": "john.doe@example.com",
      "phone": "911234567",
      "account_holder": "John Doe"
    }
  }'

Respostas

OK

Corpoapplication/json
idstring(identifier)
messageArray of strings(response-message)

An array of messages providing details about the response status. These messages give additional context about the operation result.

statusstring(response-status)

Indicates the overall status of the API response. 'ok' means the request was successful, 'error' indicates there was a problem.

Enum"ok""error"
methodobject(single-edit-method-response)
customerobject
Resposta
application/json
{ "status": "ok", "message": [ "Your request was successfully created" ], "id": "d4851c0a-66e2-4b34-9587-1e453ddcc650", "method": { "type": "CC", "status": "pending", "url": "https://cc.easypay.pt/v3/public/card-details/d4851c0a-66e2-4b34-9587-1e453ddcc650" }, "customer": { "id": "156de567-b17d-4591-a154-442c873b76c7" } }

Tokenize payment details for variable on-demand charges

Operações

Set up and manage automated recurring payments

Operações

Operations for managing payment captures

Operações

Operations for managing payment authorisations

Operações

Operations for managing payment voids

Operações

Operations for managing payment refunds

Operações

Operations for managing chargebacks

Operações

Configure and manage webhook notifications for payment events

Webhooks

Access transaction and ledger reports

Operações

Transfer funds from Easypay accounts to SEPA bank accounts

Operações

Configure account URLs for notifications and credit card transactions

Operações

Embedded payment form solution for websites

Operações

System health check endpoints

Operações