Skip to main content

Revolut Merchant

Accept online card payments and manage orders, customers, refunds, and webhooks via the Revolut Merchant API.

Revolut Merchant Logo

Authentication​

This connector uses Token-based authentication.

info

Set up your connection in the Abstra Console before using it in your workflows.

How to use​

Using the Smart Chat​

Execute the action "CHOOSE_ONE_ACTION_BELOW" from my connector "YOUR_CONNECTOR_NAME" using the params "PARAMS_HERE".

Using the Web Editor​

from abstra.connectors import run_connection_action

result = run_connection_action(
connection_name="your_connection_name",
action_name="your_action_name",
params={
"param1": "value1",
"param2": "value2"
})

Available Actions​

This connector provides 71 actions:

ActionPurposeParameters
post_api_ordersCreate an Order object. Full documentation: Merchant API - Create an orderhttps://developer.revolut.com/docs/merchant/create-orderdata: {
. amount (integer)
. currency (string)
} (object) required
get_api_ordersRetrieve all the orders that you’ve created. You can also use the query parameters for: - Filtering - Pagination The response contains an array of simplified Order objects. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve an order listhttps://developer.revolut.com/docs/merchant/retrieve-order-listlimit (string)
get_api_orders_by_order_idRetrieve the details of an order that has been created. Provide the unique order ID, and the corresponding order information is returned. Full documentation: Merchant API - Retrieve an orderhttps://developer.revolut.com/docs/merchant/retrieve-orderorder_id (string) required
patch_api_orders_by_order_idUpdate the details of an order. Specific limitations apply based on the state of the order, see full documentation: Merchant API - Update an orderhttps://developer.revolut.com/docs/merchant/update-order.order_id (string) required
data: {
. amount (integer)
. currency (string)
. merchant_order_data (object)
} (object) required
post_api_orders_by_order_id_increment_authorisationIncrement authorised amount of an order. Full documentation: Merchant API - Increment authorisationhttps://developer.revolut.com/docs/merchant/increment-authorisationorder_id (string) required
data: {
. amount (integer)
} (object) required
post_api_orders_by_order_id_captureCapture the funds of an existing, uncaptured order. When the payment for an order is authorized, the order is captured and sent to the processing stage. Full documentation: Merchant API - Capture an orderhttps://developer.revolut.com/docs/merchant/capture-orderorder_id (string) required
data: {
. amount (integer)
} (object) required
post_api_orders_by_order_id_cancelCancel an existing uncaptured order. Specific limitations apply based on the state of the order, see full documentation: Merchant API - Cancel an orderhttps://developer.revolut.com/docs/merchant/cancel-orderorder_id (string) required
post_api_1_0_orders_by_order_id_refundIssue a refund for a completed order. A refund can be either full or partial. You can initiate a refund for an order only when it is in the COMPLETED state. Full documentation: Merchant API - Refund an orderhttps://developer.revolut.com/docs/merchant/refund-orderorder_id (string) required
data: {
. amount (integer)
. currency (string)
. merchant_order_ext_ref (string)
. description (string)
} (object) required
post_api_orders_by_order_id_paymentsInitiate a payment to pay full amount for an order using a customer's saved payment method. Full documentation: Merchant API - Pay for an orderhttps://developer.revolut.com/docs/merchant/pay-orderorder_id (string) required
data: {
. saved_payment_method (object)
} (object) required
post_api_customersCreate a customer that has the information in the body of the request. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Create a customerhttps://developer.revolut.com/docs/merchant/create-customerdata: {
. full_name (string)
. email (string)
. phone (string)
} (object) required
get_api_customersGet a list of all your customers. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve a customer listhttps://developer.revolut.com/docs/merchant/retrieve-customer-listNo parameters
get_api_customers_by_customer_idGet the information about a specific customer, based on its ID. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve a customerhttps://developer.revolut.com/docs/merchant/retrieve-customercustomer_id (string) required
patch_api_customers_by_customer_idUpdate the attributes of a specific customer. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Update a customerhttps://developer.revolut.com/docs/merchant/update-customercustomer_id (string) required
data: {
. full_name (string)
. email (string)
. phone (string)
} (object) required
delete_api_customers_by_customer_idDelete the profile of a specific customer. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Delete a customerhttps://developer.revolut.com/docs/merchant/delete-customercustomer_id (string) required
get_api_customers_by_customer_id_payment_methodsRetrieve all the payment methods for a specific customer. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve payment method list of a customerhttps://developer.revolut.com/docs/merchant/retrieve-payment-method-listcustomer_id (string) required
get_api_customers_by_customer_id_payment_methods_by_payment_method_idRetrieve the information of a specific payment method that is saved. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve a customer's payment methodhttps://developer.revolut.com/docs/merchant/retrieve-payment-methodcustomer_id (string) required
payment_method_id (string) required
patch_api_customers_by_customer_id_payment_methods_by_payment_method_idWhen you use this request to update a customer's payment method, the payment method can't be used by the merchant to initiate transactions any more. This payment method can be used only when the customer is on the checkout page. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Update a customer's payment methodhttps://developer.revolut.com/docs/merchant/update-payment-methodcustomer_id (string) required
payment_method_id (string) required
data: {
. saved_for (string)
} (object) required
delete_api_customers_by_customer_id_payment_methods_by_payment_method_idDelete a specific payment method. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Delete a customer's payment methodhttps://developer.revolut.com/docs/merchant/delete-payment-methodcustomer_id (string) required
payment_method_id (string) required
get_api_payments_by_payment_idRetrieve information about a specific payment, based on the payment's ID. Full documentation: Merchant API - Retrieve payment detailshttps://developer.revolut.com/docs/merchant/retrieve-payment-detailspayment_id (string) required
post_api_subscription_plansCreate a new subscription plan with one or more pricing variations. Full documentation: Merchant API - Create a subscription planhttps://developer.revolut.com/docs/merchant/create-subscription-plandata: {
. name (string)
. variations (array)
} (object) required
get_api_subscription_plansRetrieve all subscription plans configured for your merchant account. Full documentation: Merchant API - Retrieve a subscription plan listhttps://developer.revolut.com/docs/merchant/retrieve-subscription-plan-listNo parameters
get_api_subscription_plans_by_subscription_plan_idRetrieve a specific subscription plan by its unique identifier. Full documentation: Merchant API - Retrieve a subscription planhttps://developer.revolut.com/docs/merchant/retrieve-subscription-plansubscription_plan_id (string) required
post_api_subscriptionsCreate a new subscription for a customer using a subscription plan variation. Full documentation: Merchant API - Create a subscriptionhttps://developer.revolut.com/docs/merchant/create-subscriptiondata (object) required
get_api_subscriptionsRetrieve all subscriptions for the merchant account. Full documentation: Merchant API - Retrieve a subscription listhttps://developer.revolut.com/docs/merchant/retrieve-subscription-listNo parameters
get_api_subscriptions_by_subscription_idRetrieve a subscription by its unique identifier. Full documentation: Merchant API - Retrieve a subscriptionhttps://developer.revolut.com/docs/merchant/retrieve-subscriptionsubscription_id (string) required
patch_api_subscriptions_by_subscription_idUpdate a subscription's details. Full documentation: Merchant API - Update a subscriptionhttps://developer.revolut.com/docs/merchant/update-subscriptionsubscription_id (string) required
data: {
. external_reference (string)
} (object) required
post_api_subscriptions_by_subscription_id_change_planChange a subscription plansubscription_id (string) required
data: {
. plan_variation_id (string)
. scheduled (string)
} (object) required
post_api_subscriptions_by_subscription_id_update_renewal_dateReschedule the upcoming payment date for an active subscription cycle. Full documentation: Merchant API - Update a subscription renewal datehttps://developer.revolut.com/docs/merchant/update-subscription-renewal-datesubscription_id (string) required
data: {
. renewal_date (string)
} (object) required
post_api_subscriptions_by_subscription_id_cancelCancel a subscription. Full documentation: Merchant API - Cancel a subscriptionhttps://developer.revolut.com/docs/merchant/cancel-subscriptionsubscription_id (string) required
get_api_subscriptions_by_subscription_id_cyclesRetrieve all billing cycles for a specific subscription. Full documentation: Merchant API - Retrieve a subscription cycle listhttps://developer.revolut.com/docs/merchant/retrieve-subscription-cycle-listsubscription_id (string) required
get_api_subscriptions_by_subscription_id_cycles_by_cycle_idRetrieve a specific billing cycle for a subscription by its unique identifier. Full documentation: Merchant API - Retrieve a subscription cyclehttps://developer.revolut.com/docs/merchant/retrieve-subscription-cyclesubscription_id (string) required
cycle_id (string) required
post_api_subscription_usagesReport a unit of consumption against a usage-based subscription item. Revolut accumulates reported records throughout the billing cycle and processes the charge after the cycle's usage_cutoff_date. Full documentation: Merchant API - Create a subscription usagehttps://developer.revolut.com/docs/merchant/create-subscription-usagedata: {
. subscription_id (string)
. subscription_item_code (string)
. usage_date (string)
. quantity (integer)
. metadata (object)
} (object) required
get_api_subscription_usagesRetrieve all usage records for the merchant account. Results are ordered by usage_date, unlike other list endpoints which order by created_at.  Full documentation: Merchant API - Retrieve a subscription usage listhttps://developer.revolut.com/docs/merchant/retrieve-subscription-usage-listNo parameters
get_api_subscription_usages_by_usage_idRetrieve a usage record by its unique identifier. Full documentation: Merchant API - Retrieve a subscription usagehttps://developer.revolut.com/docs/merchant/retrieve-subscription-usageusage_id (string) required
patch_api_subscription_usages_by_usage_idUpdate the quantity or metadata of a subscription usage record. Full documentation: Merchant API - Update a subscription usagehttps://developer.revolut.com/docs/merchant/update-subscription-usageusage_id (string) required
data: {
. quantity (integer)
. metadata (object)
} (object) required
delete_api_subscription_usages_by_usage_idDelete a subscription usage record. This operation is only permitted while the billing cycle is still open. Full documentation: Merchant API - Delete a subscription usagehttps://developer.revolut.com/docs/merchant/delete-subscription-usageusage_id (string) required
data: {
. quantity (integer)
. metadata (object)
} (object) required
get_api_payoutsRetrieve all the payouts you made from your Merchant account. You can also use the query parameters for: - Filtering - Pagination Full documentation: Merchant API - Retrieve a payout listhttps://developer.revolut.com/docs/merchant/retrieve-payout-listlimit (string)
get_api_payouts_by_payout_idRetrieve the details of a payout. Provide the unique payout ID, and the corresponding payout information is returned. Full documentation: Merchant API - Retrieve a payouthttps://developer.revolut.com/docs/merchant/retrieve-payoutpayout_id (string) required
get_api_disputesRetrieve all the disputes linked to your Merchant account. You can also use the query parameters for: - Filtering - Pagination Full documentation: Merchant API - Retrieve a dispute listhttps://developer.revolut.com/docs/merchant/retrieve-dispute-listNo parameters
get_api_disputes_by_dispute_idRetrieve the details of a dispute. Provide the unique dispute ID, and the corresponding dispute information is returned. Full documentation: Merchant API - Retrieve a disputehttps://developer.revolut.com/docs/merchant/retrieve-disputedispute_id (string) required
post_api_disputes_by_dispute_id_acceptMarks a specific dispute as accepted. After accepting a dispute, you cannot challenge it. Full documentation: Merchant API - Accept a disputehttps://developer.revolut.com/docs/merchant/accept-disputedispute_id (string) required
post_api_disputes_by_dispute_id_evidencesAllows uploading a single evidence file for a specific dispute. Use these evidences to provide proof for claims when challenging a dispute. Full documentation: Merchant API - Upload evidence for a disputehttps://developer.revolut.com/docs/merchant/upload-dispute-evidencedispute_id (string) required
post_api_disputes_by_dispute_id_challengeAllows challenging a dispute with a reason, comment and associated evidences. Use the uploaded evidences to provide proof for the challenge. A dispute previously accepted, cannot be challenged. Full documentation: Merchant API - Challenge a disputehttps://developer.revolut.com/docs/merchant/challenge-disputedispute_id (string) required
data: {
. reason (string)
. comment (string)
. evidences (array)
} (object) required
post_api_report_runsStart generating a new report of the relevant transactions. Full documentation: Merchant API - Create a new report runhttps://developer.revolut.com/docs/merchant/create-report-rundata: {
. filter (object)
. format (string)
. type (string)
} (object) required
get_api_report_runs_by_report_run_idRetrieve details of a report run, based on the report_run_id. Full documentation: Merchant API - Retrieve report run detailshttps://developer.revolut.com/docs/merchant/retrieve-report-run-detailsreport_run_id (string) required
get_api_report_runs_by_report_run_id_fileUse this endpoint to download the generated report file. Full documentation: Merchant API - Download report filehttps://developer.revolut.com/docs/merchant/download-report-filereport_run_id (string) required
post_api_webhooksSet up a webhook URL so that the Merchant API can push event notifications to the specified URL. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Create a webhookhttps://developer.revolut.com/docs/merchant/set-webhookdata (object) required
get_api_webhooksGet a list of webhooks that you are currently subscribed to. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve a webhook listhttps://developer.revolut.com/docs/merchant/retrieve-webhook-listNo parameters
get_api_webhooks_by_webhook_idGet the details of a specific webhook. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Retrieve a webhookhttps://developer.revolut.com/docs/merchant/retrieve-webhookwebhook_id (string) required
patch_api_webhooks_by_webhook_idUpdate the details of a specific webhook. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Update a webhookhttps://developer.revolut.com/docs/merchant/update-webhookwebhook_id (string) required
data (object) required
delete_api_webhooks_by_webhook_idDelete a webhook so that events are not sent to the specified URL any more. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API - Delete a webhookhttps://developer.revolut.com/docs/merchant/delete-webhookwebhook_id (string) required
post_api_webhooks_by_webhook_id_rotate_signing_secretRotate the signing_secret for a specific webhook. This endpoint is only supported from version 2024-09-01 Full documentation: Merchant API: Rotate a webhook signing secrethttps://developer.revolut.com/docs/merchant/rotate-webhook-signing-secretwebhook_id (string) required
data: {
. expiration_period (string)
} (object) required
post_api_locationsCreate a Location object. Full codumentation: Merchant API: Create a locationhttps://developer.revolut.com/docs/merchant/create-locationdata: {
. name (string)
. type (string)
. details (object)
} (object) required
get_api_locationsRetrieve a list of locations registered for the merchant. Full documentation: Merchant API: Retrieve location listhttps://developer.revolut.com/docs/merchant/retrieve-location-listNo parameters
get_api_locations_by_location_idRetrieve details of a specific location, based on its ID. Full documentation: Merchant API: Retrieve a locationhttps://developer.revolut.com/docs/merchant/retrieve-locationlocation_id (string) required
patch_api_locations_by_location_idUpdate details of a specific location, based on its ID. NOTE: The value of the location's type cannot be updated. Full documentation: Merchant API: Update a locationhttps://developer.revolut.com/docs/merchant/update-locationlocation_id (string) required
data: {
. name (string)
. details (object)
} (object) required
delete_api_locations_by_location_idDelete a specific location, based on its ID. Full documentation: Merchant API: Delete a locationhttps://developer.revolut.com/docs/merchant/delete-locationlocation_id (string) required
get_api_terminalsRetrieve a list of Revolut Terminal devices available to the merchant. Full documentation: Merchant API - Retrieve terminal listhttps://developer.revolut.com/docs/merchant/retrieve-terminal-listoperation_mode (string)
location_id (string)
post_api_orders_by_order_id_payment_intentsCreate a payment intent to push a payment request to a specific Revolut Terminal device. Full documentation: Merchant API - Create a payment intenthttps://developer.revolut.com/docs/merchant/create-payment-intentorder_id (string) required
data: {
. amount (integer)
. terminal_id (string)
} (object) required
get_api_payment_intents_by_payment_intent_idRetrieve the current state and details of a payment intent. Full documentation: Merchant API - Retrieve a payment intenthttps://developer.revolut.com/docs/merchant/retrieve-payment-intentpayment_intent_id (string) required
post_api_payments_by_payment_id_cancelCancel a payment intent while it's still in pending state, before the customer has completed the payment. Full documentation: Merchant API - Cancel a payment intenthttps://developer.revolut.com/docs/merchant/cancel-payment-intentpayment_id (string) required
post_api_apple_pay_domains_registerRegister your website's domain to accept payments via Apple Pay. Full documentation: Merchant API - Register domain for Apple Payhttps://developer.revolut.com/docs/merchant/register-domain-apple-paydata: {
. domain (string)
} (object) required
post_api_synchronous_webhooksUse this endpoint to register a URL where Revolut can send shipping addresses from a Revolut Pay customer for validation during the Fast checkout processhttps://developer.revolut.com/docs/guides/accept-payments/payment-methods/accept-payments-via-revolut-pay2/fast-checkout. Full documentation: Merchant API - Register address validation endpoint for Fast checkouthttps://developer.revolut.com/docs/merchant/register-address-validation-endpointdata (object) required
get_api_synchronous_webhooksRetrieve a list of synchronous webhook objects. You can use this endpoint to see your different address validation endpoints registered to different locations. Full documentation: Merchant API - Retrieve synchronous webhook listhttps://developer.revolut.com/docs/merchant/retrieve-synchronous-webhook-listNo parameters
delete_api_synchronous_webhooks_by_synchronous_webhook_idDelete a specific synchronous webhook registration, based on its ID. Full documentation: Merchant API - Delete a synchronous webhookhttps://developer.revolut.com/docs/merchant/delete-synchronous-webhooksynchronous_webhook_id (string) required
post_api_1_0_ordersCreate an Order object. Full documentation: Merchant API - Create an order Deprecatedhttps://developer.revolut.com/docs/merchant/legacy/create-order-deprecateddata: {
. amount (integer)
. merchant_order_ext_ref (string)
. email (string)
. currency (string)
} (object) required
get_api_1_0_orders_by_order_idRetrieve the details of an order that has been created. Provide the unique order ID, and the corresponding order information is returned. Full documentation: Merchant API - Retrieve an order Deprecatedhttps://developer.revolut.com/docs/merchant/legacy/retrieve-order-deprecatedorder_id (string) required
patch_api_1_0_orders_by_order_idUpdate the details of an order. Specific limitations apply based on the state of the order, see full documentation: Merchant API - Update an order Deprecatedhttps://developer.revolut.com/docs/merchant/legacy/update-order-deprecatedorder_id (string) required
data: {
. amount (integer)
. currency (string)
. merchant_order_ext_ref (string)
} (object) required
post_api_1_0_orders_by_order_id_captureCapture the funds of an existing, uncaptured order. When the payment for an order is authorized, the order is captured and sent to the processing stage. Full documentation: Merchant API - Capture an order Deprecatedhttps://developer.revolut.com/docs/merchant/legacy/capture-order-deprecatedorder_id (string) required
data: {
. amount (integer)
} (object) required
post_api_1_0_orders_by_order_id_cancelCancel an existing uncaptured order. Specific limitations apply based on the state of the order, see full documentation: Merchant API - Cancel an orderhttps://developer.revolut.com/docs/merchant/legacy/cancel-order-deprecatedorder_id (string) required
customCall any endpoint of the connected service while reusing the connection auth. Pass the full URL as _url. Other reserved keys: _method, _query, _body, _headers. Remaining params flow naturally — empty → GET, non-empty → POST JSON body._url (string) required
_method (string)
_query (object)
_body
_headers (object)

Webhook Events​

This connector emits 7 events back to your workflow. To receive one, create a hook whose path is <connection-name>/<event> — the connection name you configured plus the event from the table below.

EventDescription
order-authorisedTriggered when an order is authorised.
order-completedTriggered when an order is completed.
order-cancelledTriggered when an order is cancelled.
order-payment-authenticatedTriggered when a payment is authenticated e.g. after 3-D Secure.
order-payment-declinedTriggered when a payment is declined.
order-payment-failedTriggered when a payment fails.
payment-method-updatedTriggered when the saved payment method of a customer is updated.