# Tap Payments MCP connector

The Tap Payments connector for Elaichi lets Claude, ChatGPT, Cursor and other MCP clients look up charges, issue refunds, raise invoices and add customers in Tap Payments, with every action running as the signed-in person and recorded in an audit log.

Source: https://elaichi.ai/connectors/tappayments/

## Facts

| | |
| --- | --- |
| Application | Tap Payments |
| Category | Payment Gateway |
| AI tools | 72 |
| Authentication | Connects with an API key |
| Needs your own OAuth app | No |
| MCP endpoint | https://api.elaichi.ai/mcp |
| Works with | Claude, ChatGPT, Cursor, any MCP client, and the Elaichi Agent |
| Tools advertised by name | No. 72 tools is past the 30-tool threshold, so clients use `search_tools` and `execute_tool` |

## What you can ask once Tap Payments is connected

- List charges over 500 AED created this week.
- Summarize refunds issued against the Retail business yesterday.
- Which authorizations are still uncaptured after 48 hours?

## Connect Tap Payments in Elaichi

This happens once for the organization, before any client is involved.

1. Open Connections, choose Add connection, and pick Tap Payments.
2. Optionally set Share with, then press Connect.
3. Paste a Tap Payments API key. One person generates a token in Tap Payments and pastes it once. Everyone else works through Share with, and never sees it.

Credentials are vaulted and nobody, including the AI, reads them back. The connection becomes a toolbox immediately, so you can curate which Tap Payments tools are exposed, rename them, or freeze arguments before anyone points a client at it.

## Connect Tap Payments to Claude

Endpoint: https://api.elaichi.ai/mcp

1. Open Customize, then Connectors.
2. Press Add.
3. Name it, paste the MCP server URL, then Continue.
4. Sign in and approve.

On Team and Enterprise, an Owner adds it once. Everyone else turns it on for themselves.

## Connect Tap Payments to ChatGPT

Endpoint: https://api.elaichi.ai/mcp

1. Open Plugins, then press the + button.
2. Name it and paste the endpoint into Server URL.
3. Leave Authentication on OAuth, then tick the risk acknowledgement.
4. Press Create, then sign in and approve.

Works on the web today. The plugin directory lives at chatgpt.com/plugins.

## Connect Tap Payments to Cursor

Endpoint: https://api.elaichi.ai/mcp

1. Open `~/.cursor/mcp.json`.
2. Add the endpoint under `mcpServers`.
3. Reload Cursor, then sign in and approve.

Set up per machine, so repeat it on each computer you work from.

## Connect Tap Payments to any MCP client

Endpoint: https://api.elaichi.ai/mcp

1. Add the endpoint as a remote MCP server.
2. Sign in and approve.

The Elaichi Agent already has these tools, with nothing to set up.

## What the consent screen decides

Only Read is granted by default, which is not enough to call a Tap Payments tool. Over MCP there is no trusted place to confirm a write in the moment, so the consent screen is the standing approval rather than a formality. Grant Read and Run tools. Think hard before granting Delete, which reaches into connected apps and cannot be undone.

## What teams do with Tap Payments through Elaichi

### Find a charge and issue the refund

Finance. Pull up a customer's charges by amount or date, confirm which one they mean, and issue the full or partial refund in Tap Payments without leaving the conversation.

### Answer a payment question from live records

Support. When a customer asks why a card was charged twice, list their recent Tap Payments charges and give them a clear answer while they are still on the line.

### Raise an invoice and chase it later

Accounts receivable. Create a Tap Payments invoice for a customer, then come back in a week to list what is still unpaid and update the due date or notes on the ones that need it.

### Set up a new customer before the first charge

Operations. Add a new customer record in Tap Payments with their name, email and phone so the first charge or invoice goes out with the right details attached.

### Export charges, refunds and disputes for reconciliation

Finance. Request a download of the month's charges, refunds or disputes from Tap Payments and hand the file to whoever closes the books.

### Check merchant accounts and payout destinations

Partnerships. List the businesses and merchants under your Tap Payments account, look up where a merchant's payouts are routed, and onboard a new merchant when a partner signs.

## Frequently asked questions

### How do I connect Tap Payments to Claude?

In Elaichi, choose Tap Payments from the catalog and paste in the API key from your Tap Payments dashboard. There is no OAuth application to register and no client ID or secret to generate. Then in Claude, open Customize, then Connectors, then Add, and paste the endpoint https://api.elaichi.ai/mcp. Sign in with your Elaichi account and Tap Payments is ready to use.

### Does Tap Payments work with ChatGPT and Cursor as well as Claude?

Yes. Once Tap Payments is connected in Elaichi, the same endpoint, https://api.elaichi.ai/mcp, works in Claude, ChatGPT, Cursor, any other MCP client and the Elaichi Agent. You connect Tap Payments once and every client you use picks it up.

### What can an AI agent actually do with my Tap Payments data?

It can look up charges, create a charge or an authorization, issue refunds, raise and update invoices, add customers, and list the businesses, merchants and payout destinations under your Tap Payments account. It can also request downloads of charges, refunds, authorizations and disputes for reconciliation. Because Tap Payments has a large set of actions, short concrete asks like "refund the 120 SAR charge from yesterday" work better than long paragraphs.

### Does connecting Tap Payments give the AI access to every account and merchant?

No. The AI acts through the Tap Payments credentials of the person who connected it, so it can only reach the businesses, merchants and charges that key already covers. Elaichi can narrow that further, for example to read-only or to specific actions, but it can never grant more than Tap Payments itself allows.

### Can my team share one Tap Payments connection?

Yes. One person connects Tap Payments in Elaichi and shares it with a team, and nobody else ever sees or handles the API key. Each teammate still signs in to Elaichi as themselves, so the audit log records who issued a refund or created an invoice in Tap Payments.

### Can I stop an agent from refunding or changing things in Tap Payments?

Yes. Restrictions in Elaichi apply per action, so you can allow looking up Tap Payments charges and invoices while blocking refunds, new charges or changes to existing records. A blocked action is never shown to Claude, ChatGPT or any other client, so no prompt, however worded, can reach it.

### What happens to a Tap Payments connection when someone leaves?

Offboarding that person in Elaichi ends their access to Tap Payments at once, across every client they used. If they shared a Tap Payments connection with a team, it keeps working for everyone else. Disconnecting Tap Payments once in Elaichi removes it from Claude, ChatGPT, Cursor and every other client at the same time.

## All 72 Tap Payments tools

Every tool below is callable through https://api.elaichi.ai/mcp once Tap Payments is connected, subject to the toolbox it is in and the restrictions on the caller.

- **Create a Tap Payments authorize** (Create). Create an authorization hold on a card in Tap. Returns the authorize object including id, object, status, amount, currency, live_mode, api_version, method, transaction, reference, response, card, customer, source, redirect, post, auto, merchant, metadata, and payment_agreement.
- **Update a Tap Payments authorize by ID** (Update). Update an existing Tap authorization by id. Only description, metadata, and receipt may be modified; all other fields remain unchanged. Returns the updated authorize object including id, status, amount, currency, live_mode, api_version, transaction, customer, source, card, redirect, post, and auto details. Required: id.
- **Tap Payments authorize download** (Download). Download Tap authorize records filtered by date range and merchant IDs. Returns the authorize records as a downloadable file.
- **Create a Tap Payments authorize download** (Create). Create a Tap authorize download request to export authorize records matching specified filter criteria. Returns a downloadable file of matched authorize records; response format is content-type-specific (text/plain or application/json).
- **Create a Tap Payments charge** (Create). Create a charge in Tap to collect payment from a customer. Returns the created charge object including id, status, amount, currency, customer, card, source, and transaction details. Required: amount, currency, customer, source, redirect.
- **List all Tap Payments charge** (List). List charges in Tap with optional filters for period, status, customers, and currency. Returns each charge record including id, status, amount, currency, customer, card, source, and transaction details.
- **Update a Tap Payments charge by ID** (Update). Update an existing Tap charge. Only description and metadata can be modified. Returns the updated charge object including id, status, amount, currency, customer, card, source, and transaction details.
- **Tap Payments charge download** (Download). Download charges from Tap as a bulk report, filtered by period, merchants, status, currency, and more. Returns charge records including id, status, amount, currency, customer, source, card, and transaction details. The response format can be JSON or plain text via the accept header.
- **Create a Tap Payments charge download** (Create). Create a charge download report in Tap by posting filter criteria such as period, merchants, status, currency, payment methods, and customers. Returns charge records including id, status, amount, currency, customer, reference, card, transaction, and merchant details.
- **Create a Tap Payments refund** (Create). Create a refund against an existing Tap charge, supporting full or partial refund amounts. Returns the refund object including id, status, amount, currency, charge_id, created, date, reference, response, gateway, and transaction details. Required: charge_id, amount, currency, reason.
- **Tap Payments refund download** (Download). Download refund records from Tap. Returns refund objects including id, status, amount, currency, charge_id, created, date, reference, response, gateway, and transaction details.
- **Create a Tap Payments refund download** (Create). Create a refund download report in Tap by posting filter criteria such as merchants, period, status, currency, and dispute flags. Returns refund records including id, object, amount, charge_id, currency, status, created, date, reference, transaction, gateway, and reason.
- **Create a Tap Payments business** (Create). Create a new business in Tap. Returns the created business object including id, name, type, entity, contact_person, and brands. Required: name, type, entity, brands. Pass an idempotent string to prevent duplicate creation.
- **List all Tap Payments business** (List). List businesses in Tap with optional filtering by business_id, idempotent key, brand, entity, and user details. Returns business records including id, name, type, entity, contact_person, and brands.
- **List all Tap Payments destination** (List). List all destinations in Tap. Returns: id. Max 50 destinations per call.
- **Get single Tap Payments destination by ID** (Get). Get a single Tap destination by its unique identifier. Returns: id, amount, currency. Required: destination_id.
- **Create a Tap Payments merchant** (Create). Create a new merchant in Tap linked to a business entity, brand, and optional branch or wallet. Returns the merchant record including display_name, business_id, business_entity_id, brand_id, wallet_id, charge_currenices, bank_account, and settlement_by. Required: display_name, business_id, business_entity_id, brand_id.
- **List all Tap Payments merchant** (List). List all merchants in Tap for a given business, optionally filtered by business_id and date period. Returns merchant records including display_name, business_id, business_entity_id, brand_id, wallet_id, charge_currenices, bank_account, and settlement_by.
- **Create a Tap Payments invoice** (Create). Create a new invoice in Tap. Returns the created invoice object including its id, draft status, due and expiry dates, mode, customer, order, notifications, reference, and redirect configuration. Required: due, expiry, customer, order.
- **List all Tap Payments invoice** (List). List invoices in Tap filtered by date period, reference, or track status. Returns invoice records including id, draft, due, expiry, mode, customer, order, and reference. Supports ordering by field and direction.
- **Update a Tap Payments invoice by ID** (Update). Update an existing Tap invoice. Returns the updated invoice object including its id, draft status, due and expiry dates, mode, customer, order, notifications, and reference. Required: invoice_id, due, expiry, customer, order.
- **Create a Tap Payments dispute download** (Create). Create a dispute download request in Tap for a specified date period and optional list of merchant IDs. Returns dispute data as a downloadable file whose content is either application/json or text/plain depending on the accept header — the payload is file content and not a structured record. Required: period.
- **Create a Tap Payments file** (Create). Create a file in Tap by uploading a document. Returns the created file object including id, filename, purpose, title, type, size, url, and links. Required: purpose, file, title, expires_at, file_link_create.
- **Create a Tap Payments customer** (Create). Create a new customer in Tap. Returns the created customer object including id, first_name, last_name, email, and phone. Required: first_name.
- **List all Tap Payments customer** (List). List customers in Tap. Returns a paginated collection of customer records, each including id, first_name, last_name, email, and phone.
- **Get single Tap Payments customer by ID** (Get). Get a Tap customer by customer_id. Returns the customer object including id, first_name, last_name, email, and phone. Required: customer_id.
- **Update a Tap Payments customer by ID** (Update). Update an existing Tap customer. Returns the updated customer object including id, first_name, last_name, email, and phone. Required: first_name.
- **List all Tap Payments payout** (List). List Tap payouts within a specified date period, optionally filtered by merchant IDs and payout IDs. Returns payout records each including id, status, amount, currency, merchant_id, date, wallet details (bank name, swift, beneficiary iban), and settlements_available. Required: period. Maximum 50 payouts per call.
- **Get single Tap Payments payout by ID** (Get). Retrieve a specific Tap payout by payout ID. Returns the payout record including id, status, amount, currency, merchant_id, date, and wallet details (bank name, swift, and beneficiary iban). Required: payouts.
- **Tap Payments payout download** (Download). Download a specific Tap payout's data by payout ID. Returns the payout record including id, status, amount, currency, merchant_id, date, and wallet details (bank name, swift, and beneficiary iban). Required: payouts.
- **Create a Tap Payments payout download** (Create). Create a payout download report in Tap for one or more merchants, optionally filtered by specific payout IDs. Returns an opaque text/plain file download containing the requested payout data; the response is a file stream rather than a structured JSON payload.
- **List all Tap Payments card** (List). List all saved cards for a Tap customer. Returns a collection of card objects, each including id, object, brand, exp_month, exp_year, last_four, first_six, name, funding, fingerprint, customer, scheme, address, and issuer. Required: customer_id.
- **Get single Tap Payments card by ID** (Get). Retrieve a specific saved card for a Tap customer by card id. Returns: id, object, brand, scheme, last4, last_four, first_six, exp_month, exp_year, name, funding, fingerprint, customer, address, address_line1, address_country, address_city, phone_number, address_zip, issuer. Required: customer_id, id.
- **Delete a Tap Payments card by ID** (Delete). Delete a saved card for a Tap customer by card id. Returns the deleted card object including id, object, brand, exp_month, exp_year, last_four, name, funding, and fingerprint. Required: customer_id, id.
- **Create a Tap Payments card** (Create). Verify and register a card in Tap using the card verification flow. Returns the resulting card object including id, object, brand, exp_month, exp_year, last_four, first_six, name, funding, fingerprint, customer, scheme, address, and issuer. Required: currency, customer.
- **Create a Tap Payments token** (Create). Create a single-use payment token in Tap from raw card data, a saved card, or a network (scheme) token, usable as a source in Charges, Authorize, or Card API calls. Returns: id, object, client_ip, card. Tokens are single-use and valid for only a few minutes after creation.
- **Create a Tap Payments connect** (Create). Create a Tap connect URL for a lead, initiating an onboarding flow that authenticates the lead and converts it to an account when all validation rules are met. Returns: scope, data, lead, board, redirect, post, webhook, interface. Required: scope, lead, redirect, post.
- **Tap Payments connect create account** (Create). Convert a Tap lead into a retailer account by submitting the lead ID. Returns: scope, data, lead, board, redirect, post, webhook, interface. Required: lead_id.
- **Create a Tap Payments connect account** (Create). Convert a lead to a retailer (connect account) in Tap by submitting a lead ID. The source documents a 200 OK response on success but does not enumerate the response body fields. Required: lead_id.
- **Create a Tap Payments lead** (Create). Create a new lead in Tap. Returns the lead object including country, brand, entity, wallet, marketplace, and post. Required: country.
- **Update a Tap Payments lead by ID** (Update). Update a Tap lead for a retailer. Returns the updated lead object including country, brand, entity, wallet, marketplace, and post. Required: lead_id, country, brand, entity, wallet, marketplace.
- **Create a Tap Payments charge** (Create). Create a charge in Tap against a payment source (token or source ID). Returns the created charge object including id, status, amount, currency, customer, card, transaction, reference, and payment_agreement. Required: amount, currency, source.
- **List all Tap Payments charges** (List). List charges in Tap, optionally filtered by period, status, currency, customer, or other criteria. Returns a collection of charge records, each including id, status, amount, currency, customer, source, and payment_agreement.
- **Update a Tap Payments charge by ID** (Update). Update a Tap charge by id. Allows updating the description and metadata fields. Returns the updated charge object including id, status, amount, currency, description, metadata, customer, and card. Required: id.
- **Tap Payments charges download** (Download). Download Tap charge records in bulk for a given period, merchant set, or filter criteria. Returns charge records including id, status, amount, currency, customer, source, and payment_agreement.
- **Create a Tap Payments refund** (Create). Create a refund in Tap against an existing charge (full or partial). Returns the refund object including id, status, amount, currency, charge_id, reference, response, and transaction details. Required: charge_id, amount, currency.
- **Tap Payments refunds download** (Download). Download refunds from Tap with optional filtering by merchant reference and metadata. Returns the refund object including id, status, amount, currency, charge_id, reference, gateway, and transaction details.
- **Create a Tap Payments business** (Create). Create a new business in Tap. Returns the created business object including business_id, brand, entity, and user. Required: name, type, entity, brands.
- **List all Tap Payments businesses** (List). List all businesses in Tap. Returns a collection of business records, each including business_id, brand, entity, and user details.
- **List all Tap Payments destinations** (List). List all Tap destinations available for splitting payments with sub-merchants. Returns: id, amount, currency, charge_id, reason, post, metadata, reference. Max 50 per page.
- **Get single Tap Payments destination by ID** (Get). Get a single Tap destination by id. Returns: id, amount, currency, charge_id, reason, post, metadata, reference. Required: id.
- **Create a Tap Payments merchant** (Create). Create a new merchant in Tap. Returns the created merchant object including display_name, business_id, business_entity_id, brand_id, branch_id, wallet_id, charge_currenices, bank_account, and settlement_by.
- **List all Tap Payments merchants** (List). List merchants in Tap, optionally filtered by business and date period. Returns a collection of merchant objects including display_name, business_id, business_entity_id, brand_id, branch_id, wallet_id, charge_currenices, bank_account, and settlement_by.
- **Create a Tap Payments invoice** (Create). Create a new invoice in Tap. Returns the created invoice object including id, draft, due, expiry, mode, description, customer, and order. Required: due, expiry, customer, order.
- **List all Tap Payments invoices** (List). List invoices in Tap, optionally filtering by period, reference, or track status. Returns invoice records including id, draft, due, expiry, mode, customer, and order.
- **Update a Tap Payments invoice by ID** (Update). Update an existing invoice in Tap by id. Returns the updated invoice object including id, draft, due, expiry, mode, customer, and order. Required: id, due, expiry, customer, order.
- **Tap Payments disputes download** (Download). Download dispute data from Tap for a specified date range and list of merchants. Returns a text/plain file (spreadsheet) containing dispute records for the requested period. Required: period.
- **Create a Tap Payments file** (Create). Upload a file to the Tap server for use in merchant onboarding and document verification (e.g., identity documents, business logos, commercial registration). Returns the created file object including id, filename, purpose, size, title, type, url, and links. Required: file, purpose, title, file_link_create, expires_at.
- **Create a Tap Payments customer** (Create). Create a new customer in Tap. Returns the created customer object including id, first_name, last_name, and email.
- **List all Tap Payments customers** (List). List customers in Tap. Returns a paginated collection of customer records, each including id, first_name, last_name, email, and phone.
- **Get single Tap Payments customer by ID** (Get). Get a single Tap customer by id. Returns the customer object including id, first_name, last_name, email, and phone. Required: id.
- **Update a Tap Payments customer by ID** (Update). Update a Tap customer by id. Returns the updated customer object including id, first_name, last_name, email, and phone. Required: id.
- **List all Tap Payments payouts** (List). List Tap payouts filtered by date period, merchants, or specific payout IDs. Returns a list envelope with object, live_mode, count, has_more, and a payouts array where each item contains id, status, date, amount, currency, merchant_id, wallet, and settlements_available.
- **Tap Payments payouts download** (Download). Download Tap payouts filtered by payout ID or merchant. Returns a list envelope with object, live_mode, count, has_more, and a payouts array where each item contains id, status, date, amount, currency, merchant_id, wallet, and settlements_available.
- **List all Tap Payments cards** (List). List all saved cards for a Tap customer. Returns card objects including id, object, brand, exp_month, exp_year, name, funding, fingerprint, last4, scheme, and issuer. Required: customer_id.
- **Get single Tap Payments card by ID** (Get). Retrieve a single saved card from a Tap customer's account by id. Returns the card object including id, object, brand, exp_month, exp_year, name, funding, fingerprint, last4, scheme, and issuer. Required: customer_id, id.
- **Delete a Tap Payments card by ID** (Delete). Delete a saved card from a Tap customer's account by id. Returns the deleted card object including id, object, brand, exp_month, exp_year, name, last4, and funding. Required: customer_id, id.
- **Create a Tap Payments card** (Create). Verify a card in Tap via 3D Secure, optionally saving it to a customer account. Returns the verified card object including id, object, brand, exp_month, exp_year, name, funding, fingerprint, last4, scheme, and issuer.
- **Create a Tap Payments token** (Create). Create a single-use token in Tap that can be used in place of a payment source in the Charges or Authorize API. Supports card, encrypted card, saved card, Apple Pay, Samsung Pay, and scheme token types. Returns: id, saved_card, client_ip. Required inputs vary by token type: use type + token_data for Apple Pay, Samsung Pay, or scheme tokens; card for plain or encrypted card tokens; saved_card for…
- **Create a Tap Payments lead** (Create). Create a new lead in Tap. Returns the created lead object including id, country, segment, brand, entity, wallet, marketplace, and post webhook URL.
- **Get single Tap Payments lead by ID** (Get). Get a single Tap lead by id. Returns the lead object including id, country, brand, entity, wallet, marketplace, and post webhook details. Required: id.
- **Update a Tap Payments lead by ID** (Update). Update a Tap lead by id. Returns the updated lead object including id, country, brand, entity, wallet, marketplace, and post webhook details. Required: id.
