Airtm Embedded Receivers API
The Embedded Receivers API from Airtm — 4 operation(s) for embedded receivers.
The Embedded Receivers API from Airtm — 4 operation(s) for embedded receivers.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/airtm-embedded-receivers-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Airtm Enterprise API V2 Embedded Receivers API
version: 1.155.0
description: '# Introduction
The Airtm Enterprise API enables organizations to send and receive payments globally through a simple REST API.'
contact:
name: Airtm Enterprise
email: enterprise@airtm.com
url: https://www.airtm.com
servers:
- url: https://api.enterprise.airtm.com/v2
- url: https://api.stg.enterprise.airtm.com/v2
tags:
- name: Embedded Receivers
paths:
/embedded/receivers:
post:
operationId: CreateReceiver
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/ReceiverApiResponse'
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Create a new embedded receiver for the authenticated partner.
summary: Create receiver
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters: []
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateReceiverRequest'
example:
externalReceiverId: your-own-controlled-id
partyType: individual
country: VEN
individual:
firstName: $first_name
lastName: $last_name
dob: '1990-01-01'
nationalIdNumber: $national_id_number
contact:
email: $email
phone: $phone_number
address:
line1: $address_line1
city: $address_city
region: $address_region
postalCode: $address_postal_code
country: $address_country
compliance:
kycReliance:
performedBy: $kyc_reliance_performed_by
kycReferenceId: kyc-cl-mokcvfdi-2c5ee14f
status: VERIFIED
performedAt: '2026-03-24T12:00:00.000Z'
level: FULL
documentType: PASSPORT
provider:
name: $kyc_reliance_provider_name
applicantId: $kyc_reliance_provider_applicant_id
result: GREEN
payoutDestinations:
- paymentRailId: airtm:bank:venezuela:banco-activo
senderId: 11111111-1111-1111-1111-111111111111
destination:
accountHolder: Testing Embedded
accountNumber: 01719987567890123499
interbankTransfer: 'Yes'
nationalIdentification: V26334563
get:
operationId: GetReceiverByExternalId
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ReceiverApiResponse'
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Retrieve a receiver by its external identifier.
summary: Get receiver by external id
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters:
- description: The external receiver identifier provided by the partner.
in: query
name: externalReceiverId
required: true
schema:
type: string
/embedded/receivers/{receiverId}:
get:
operationId: GetReceiverById
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ReceiverApiResponse'
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Retrieve a receiver by its id.
summary: Get receiver by id
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters:
- description: The receiver id.
in: path
name: receiverId
required: true
schema:
type: string
put:
operationId: UpdateReceiver
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ReceiverApiResponse'
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Update an existing embedded receiver.
summary: Update receiver
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters:
- description: The receiver id.
in: path
name: receiverId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateReceiverRequest'
/embedded/receivers/{receiverId}/payment-rail-instance:
post:
operationId: AddPaymentRailInstance
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/PaymentRailInstanceApiResponse'
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Add a payment rail instance to an existing receiver.
summary: Add payment rail instance
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters:
- description: The receiver id.
in: path
name: receiverId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/AddPaymentRailInstanceRequest'
example:
paymentRailId: airtm:bank:venezuela:mercantil
destination:
accountNumber: '1234567890'
bankCode: '0105'
accountHolderName: Jane Doe
senderId: 123e4567-e89b-12d3-a456-426614174000
/embedded/receivers/{receiverId}/payment-rail-instance/{paymentRailInstanceId}:
delete:
operationId: RemovePaymentRailInstance
responses:
'204':
description: No Content
default:
description: Error
content:
application/json:
schema:
properties:
code:
type: string
description: 'Machine-friendly error code
See the API error code catalog in the documentation for the endpoint surface you are using.'
example: '415096'
message:
type: string
description: Human-readable error message
example: Invalid email address
data:
$ref: '#/components/schemas/Record_string.unknown_'
description: Additional data related to the error
example:
email: invalid@address
required:
- code
- message
type: object
description: Remove a payment rail instance from a receiver.
summary: Remove payment rail instance
tags:
- Embedded Receivers
security:
- embeddedAuth: []
parameters:
- description: The receiver id.
in: path
name: receiverId
required: true
schema:
type: string
- description: The payment rail instance id to remove.
in: path
name: paymentRailInstanceId
required: true
schema:
type: string
components:
schemas:
KycLevel:
enum:
- BASIC
- FULL
type: string
x-enum-varnames:
- BASIC
- FULL
Record_string.unknown_:
properties: {}
additionalProperties: {}
type: object
description: Construct a type with a set of properties K of type T
PaymentRailInstanceApiResponse:
properties:
id:
type: string
paymentRailId:
type: string
destination:
$ref: '#/components/schemas/Record_string.unknown_'
senderId:
type: string
createdAt:
type: string
updatedAt:
type: string
required:
- id
- paymentRailId
- destination
- senderId
- createdAt
- updatedAt
type: object
additionalProperties: false
UpdateReceiverRequest:
properties:
partyType:
type: string
enum:
- individual
- business
description: 'The type of party: individual or business.'
pattern: ^(individual|business)$
country:
type: string
description: Country code 3 letter ISO code.
minLength: 3
maxLength: 3
individual:
$ref: '#/components/schemas/Partial_CreateReceiverIndividual_'
description: Individual party details (partial update).
contact:
$ref: '#/components/schemas/Partial_CreateReceiverContact_'
description: Contact information (partial update).
address:
$ref: '#/components/schemas/Partial_CreateReceiverAddress_'
description: Address information (partial update).
compliance:
$ref: '#/components/schemas/Partial_CreateReceiverCompliance_'
description: Compliance and KYC reliance information (partial update).
type: object
additionalProperties: false
CreateReceiverPayoutDestination:
description: 'Payout destination: a payment rail plus rail-specific destination data.'
properties:
paymentRailId:
type: string
description: 'Payment rail identifier (e.g. airtm:bank:venezuela:mercantil).
This refers to the ID of the payment rail in the catalog.
Refer to [Catalog](#tag/embedded-catalog) section for more information.'
destination:
$ref: '#/components/schemas/Record_string.unknown_'
description: 'Rail-specific destination data (e.g. accountNumber, bankCode, accountHolderName).
The object to send must match the requirements of the payment rail in the catalog item''s `destinationFields`.
Refer to [Catalog](#tag/embedded-catalog) section for more information.'
senderId:
$ref: '#/components/schemas/Uuid'
description: The sender id that will use this receiver payment instance.
required:
- paymentRailId
- destination
- senderId
type: object
additionalProperties: false
DocumentType:
enum:
- PASSPORT
- NATIONAL_ID
- DRIVER_LICENSE
type: string
x-enum-varnames:
- PASSPORT
- NATIONAL_ID
- DRIVER_LICENSE
Partial_CreateReceiverContact_:
properties:
email:
type: string
pattern: ^(.+)@(.+)$
phone:
type: string
pattern: ^\+[0-9]{1,3}[0-9]{6,}$
type: object
description: Make all properties in T optional
ProviderResult:
enum:
- GREEN
- AMBER
- RED
type: string
x-enum-varnames:
- GREEN
- AMBER
- RED
ReceiverApiResponse:
properties:
id:
type: string
externalReceiverId:
type: string
partyType:
type: string
enum:
- individual
- business
country:
type: string
individual:
properties:
nationalIdNumber:
type: string
dob:
type: string
lastName:
type: string
firstName:
type: string
required:
- nationalIdNumber
- dob
- lastName
- firstName
type: object
contact:
properties:
phone:
type: string
email:
type: string
type: object
address:
properties:
country:
type: string
postalCode:
type: string
region:
type: string
city:
type: string
line1:
type: string
type: object
compliance:
properties:
kycReliance:
properties:
provider:
properties:
result:
$ref: '#/components/schemas/ProviderResult'
applicantId:
type: string
name:
type: string
required:
- result
- applicantId
- name
type: object
documentType:
$ref: '#/components/schemas/DocumentType'
level:
$ref: '#/components/schemas/KycLevel'
performedAt:
type: string
status:
$ref: '#/components/schemas/KycStatus'
kycReferenceId:
type: string
performedBy:
type: string
required:
- provider
- documentType
- level
- performedAt
- status
- kycReferenceId
- performedBy
type: object
required:
- kycReliance
type: object
payoutDestinations:
items:
properties:
destination:
$ref: '#/components/schemas/Record_string.unknown_'
paymentRailId:
type: string
required:
- destination
- paymentRailId
type: object
type: array
createdAt:
type: string
updatedAt:
type: string
required:
- id
- externalReceiverId
- partyType
- country
- individual
- contact
- address
- payoutDestinations
- createdAt
- updatedAt
type: object
additionalProperties: false
CreateReceiverAddress:
description: Address information for the receiver.
properties:
line1:
type: string
city:
type: string
region:
type: string
postalCode:
type: string
country:
type: string
description: Country code 3 letter ISO code.
minLength: 3
maxLength: 3
type: object
additionalProperties: false
Partial_CreateReceiverIndividual_:
properties:
firstName:
type: string
lastName:
type: string
dob:
type: string
nationalIdNumber:
type: string
type: object
description: Make all properties in T optional
Partial_CreateReceiverAddress_:
properties:
line1:
type: string
city:
type: string
region:
type: string
postalCode:
type: string
country:
type: string
description: Country code 3 letter ISO code.
minLength: 3
maxLength: 3
type: object
description: Make all properties in T optional
KycStatus:
enum:
- VERIFIED
- PARTIALLY_VERIFIED
- NOT_VERIFIED
type: string
x-enum-varnames:
- VERIFIED
- PARTIALLY_VERIFIED
- NOT_VERIFIED
CreateReceiverKycReliance:
description: KYC reliance information from the partner's KYC provider.
properties:
performedBy:
type: string
kycReferenceId:
type: string
status:
$ref: '#/components/schemas/KycStatus'
performedAt:
type: string
level:
$ref: '#/components/schemas/KycLevel'
documentType:
$ref: '#/components/schemas/DocumentType'
provider:
properties:
result:
$ref: '#/components/schemas/ProviderResult'
applicantId:
type: string
name:
type: string
required:
- result
- applicantId
- name
type: object
required:
- performedBy
- kycReferenceId
- status
- performedAt
- level
- documentType
- provider
type: object
additionalProperties: false
CreateReceiverContact:
description: Contact information for the receiver.
properties:
email:
type: string
pattern: ^(.+)@(.+)$
phone:
type: string
pattern: ^\+[0-9]{1,3}[0-9]{6,}$
type: object
additionalProperties: false
CreateReceiverCompliance:
properties:
kycReliance:
$ref: '#/components/schemas/CreateReceiverKycReliance'
required:
- kycReliance
type: object
additionalProperties: false
Uuid:
type: string
format: uuid
pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
CreateReceiverRequest:
properties:
externalReceiverId:
type: string
description: The unique identifier for this receiver in the partner's system.
partyType:
type: string
enum:
- individual
- business
description: 'The type of party: individual or business.'
pattern: ^(individual|business)$
country:
type: string
description: Country code 3 letter ISO code.
minLength: 3
maxLength: 3
payoutDestinations:
items:
$ref: '#/components/schemas/CreateReceiverPayoutDestination'
type: array
description: "Payment rail instance information (bank destination details). And the sender id that will use this payment rail instance. Object example:\n`{\n \"paymentRailId\": \"airtm:bank:venezuela:mercantil\",\n \"destination\": {\n \"accountNumber\": \"01719987567890123499\",\n \"accountHolderName\": \"Jane Doe\"\n },\n \"senderId\": \"123e4567-e89b-12d3-a456-426614174000\"\n}`"
default: []
individual:
$ref: '#/components/schemas/CreateReceiverIndividual'
description: Individual party details. Required when partyType is 'individual'.
contact:
$ref: '#/components/schemas/CreateReceiverContact'
description: Contact information.
address:
$ref: '#/components/schemas/CreateReceiverAddress'
description: Address information.
compliance:
$ref: '#/components/schemas/CreateReceiverCompliance'
description: Compliance and KYC reliance information. Optional for receivers.
required:
- externalReceiverId
- partyType
- country
- individual
type: object
additionalProperties: false
Partial_CreateReceiverCompliance_:
properties:
kycReliance:
$ref: '#/components/schemas/CreateReceiverKycReliance'
type: object
description: Make all properties in T optional
AddPaymentRailInstanceRequest:
description: Request body for adding a payment rail instance to a receiver.
properties:
paymentRailId:
type: string
description: 'Payment rail identifier (e.g. airtm:bank:venezuela:mercantil).
This refers to the ID of the payment rail in the catalog.
Refer to [Catalog](#tag/embedded-catalog) section for more information.'
destination:
$ref: '#/components/schemas/Record_string.unknown_'
description: 'Rail-specific destination data (e.g. accountNumber, bankCode, accountHolderName).
The object to send must match the requirements of the payment rail in the catalog item''s `destinationFields`.
Refer to [Catalog](#tag/embedded-catalog) section for more information.'
senderId:
$ref: '#/components/schemas/Uuid'
description: The sender id that will use this payment rail instance.
required:
- paymentRailId
- destination
- senderId
type: object
additionalProperties: false
CreateReceiverIndividual:
description: Individual party details. Required when partyType is 'individual'.
properties:
firstName:
type: string
lastName:
type: string
dob:
type: string
nationalIdNumber:
type: string
required:
- firstName
- lastName
- dob
- nationalIdNumber
type: object
additionalProperties: false
securitySchemes:
basicAuth:
type: http
scheme: basic
x-tagGroups:
- name: Payout Operations
tags:
- Payouts
- Bulk Payouts
- Users
- name: Payin Operations
tags:
- Payins
- name: Account
tags:
- Me
- Deposits
- Reports
- name: Direct Withdrawal
tags:
- External Bank Account
- External Crypto Account
- Withdrawals
- name: Webhooks
tags:
- Webhooks