Modulr Payment Initiations API
The Payment Initiations API from Modulr — 5 operation(s) for payment initiations.
The Payment Initiations API from Modulr — 5 operation(s) for payment initiations.
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/modulr-payment-initiations-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: Modulr Payment Initiations API
description: Modulr API
license:
name: © Modulr Finance
url: https://www.modulrfinance.com
version: '1.0'
servers:
- url: https://api-sandbox.modulrfinance.com/api-sandbox-token
security:
- modulo_security: []
tags:
- name: Payment Initiations
paths:
/standing-order-initiations:
post:
tags:
- Payment Initiations
summary: Initiate standing order from ASPSP
description: Initiate a new standing order to the specified destination account from an account held at an ASPSP.
operationId: createStandingOrderInitiation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.CreateStandingOrderInitiationRequest'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.CreateStandingOrderInitiationResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.MessageResponse'
security:
- HMAC: []
- TOKEN: []
/payment-initiations:
post:
tags:
- Payment Initiations
summary: Initiate payment from ASPSP
description: Initiate a payment to the specified destination account from an account held at an ASPSP.
operationId: createPaymentInitiation
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.CreatePaymentInitiationRequest'
required: true
responses:
'201':
description: Created
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.CreatePaymentInitiationResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.MessageResponse'
security:
- HMAC: []
- TOKEN: []
/standing-order-initiations/{standingOrderInitiationId}:
get:
tags:
- Payment Initiations
summary: Get standing order initiation request details
description: Retrieve the details of a specific standing order initiation request.
operationId: getStandingOrderInitiation
parameters:
- name: standingOrderInitiationId
in: path
description: Standing order initiation ID
required: true
style: simple
explode: false
schema:
type: string
minLength: 1
responses:
'200':
description: Standing order initiation found
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.StandingOrderInitiationResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.MessageResponse'
'404':
description: Standing order initiation not found
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.StandingOrderInitiationResponse'
security:
- HMAC: []
- TOKEN: []
/payment-initiations/{paymentInitiationId}:
get:
tags:
- Payment Initiations
summary: Get payment initiation request details
description: Retrieve the details of a specific payment initiation request.
operationId: getPaymentInitiation
parameters:
- name: paymentInitiationId
in: path
description: Payment initiation ID
required: true
style: simple
explode: false
schema:
type: string
minLength: 1
responses:
'200':
description: Payment initiation found
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.PaymentInitiationResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.MessageResponse'
'404':
description: Payment initiation not found
content:
application/json:
schema:
$ref: '#/components/schemas/pispgateway.PaymentInitiationResponse'
security:
- HMAC: []
- TOKEN: []
/aspsps:
get:
tags:
- Payment Initiations
summary: Get supported ASPSPs
description: Gets a list of all supported Account Servicing Payment Service Providers (ASPSPs).
operationId: getAspsProviders
responses:
'200':
description: OK
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.AspsProviderResponse'
'400':
description: Bad Request
content:
'*/*':
schema:
type: array
items:
$ref: '#/components/schemas/pispgateway.MessageResponse'
security:
- HMAC: []
- TOKEN: []
components:
schemas:
pispgateway.DeliveryAddress:
type: object
description: Information that locates and identifies a specific address, as defined by postal services or in free format text, must be specified if paymentContextCode is ECOMMERCEGOODS
properties:
addressLine1:
type: string
description: First line of the address
maxLength: 70
minLength: 0
addressLine2:
type: string
description: Second line of the address
maxLength: 70
minLength: 0
postTown:
type: string
description: The post town
maxLength: 35
minLength: 0
postCode:
type: string
description: The postcode
maxLength: 16
minLength: 0
country:
type: string
description: The country
minLength: 1
required:
- addressLine1
- country
- postCode
- postTown
pispgateway.StandingOrderSchedule:
type: object
description: The schedule of the standing order
properties:
frequency:
type: string
description: Type of the capability, can be one of WEEKLY, MONTHLY
enum:
- WEEKLY
- MONTHLY
initialDate:
type: string
description: The date on which the standing order should begin. This must be at least 3 days in the future from today. Date format 'yyyy-MM-dd'
example: '2021-03-25'
finalDate:
type: string
description: The optional date on which the standing order should end. If unspecified, the standing order will continue until cancelled.This must be at least 3 days in the future from today. Date format 'yyyy-MM-dd'
example: '2021-03-25'
required:
- frequency
- initialDate
pispgateway.PaymentAmount:
type: object
description: The amount of the payment
properties:
currency:
type: string
description: Currency of the account in ISO 4217 format. Only allowable value is GBP
enum:
- GBP
value:
type: number
description: Amount of the payment in Major Currency Units - '1' = 1.00 GBP
example: '100.00'
maximum: 2147483647
minimum: 0.01
required:
- currency
- value
pispgateway.PaymentInitiationResponse:
type: object
description: Response object for Get Payment Initiation
properties:
id:
type: string
description: The identifier of the payment initiation
example: I000000001
status:
type: string
description: The status of the payment initiation, can be one of SUBMITTED, AWAITING_CONSENT, CONSENT_REJECTED, EXECUTED, ER_EXPIRED, ER_EXTSYS, ER_GENERAL
example: AWAITING_CONSENT
paymentAmount:
$ref: '#/components/schemas/pispgateway.PaymentAmount'
description: The payment amount
paymentReference:
type: string
description: The payment reference
destination:
$ref: '#/components/schemas/pispgateway.Destination'
description: The payment destination
aspspId:
type: string
description: The identifier of the ASPSP used for the payment
example: H100000001
aspspPaymentStatus:
type: string
description: The status of the payment at the ASPSP. When available, this is passed through from the ASPSP without modification.
example: AcceptedSettlementCompleted
pispgateway.Destination:
type: object
description: The destination account for the payment
properties:
type:
type: string
description: Indicates the type of destination. Can be one of ACCOUNT, SCAN
enum:
- ACCOUNT
- SCAN
id:
type: string
description: Identifier of the destination account if using ACCOUNT type
example: A1100001
accountNumber:
type: string
description: Account Number of destination account if using SCAN type
example: '12345678'
pattern: ^[0-9]{8}$
sortCode:
type: string
description: Sort Code of destination account if using SCAN type
example: '000000'
pattern: ^[0-9]{6}$
name:
type: string
description: Name of destination account if using SCAN type (this may be truncated)
example: Test
maxLength: 70
minLength: 0
required:
- type
pispgateway.AspsProviderResponse:
type: object
properties:
id:
type: string
description: Unique identifier (within Modulr) of the ASPSP
example: H100000001
name:
type: string
description: Name of the ASPSP
example: Bank of Money
capabilities:
type: array
description: Capability list of the ASPSP
items:
$ref: '#/components/schemas/pispgateway.Capability'
pispgateway.CreateStandingOrderInitiationRequest:
type: object
description: Request object to Initiate Standing Order
properties:
aspspId:
type: string
description: Identifier for ASPSP being used for the standing order
example: H100000001
minLength: 1
payment:
$ref: '#/components/schemas/pispgateway.StandingOrderPayment'
description: The payment of the standing order
schedule:
$ref: '#/components/schemas/pispgateway.StandingOrderSchedule'
description: The schedule of the standing order
context:
$ref: '#/components/schemas/pispgateway.PaymentContext'
description: Payment context used to specify additional details for risk scoring
required:
- aspspId
- context
- payment
- schedule
pispgateway.PaymentContext:
type: object
description: Payment context for the initiation request
properties:
paymentContextCode:
type: string
description: Indicates type of Payment Context, can be one of BILLPAYMENT, ECOMMERCEGOODS, ECOMMERCESERVICES, OTHER, PARTYTOPARTY. If no value or paymentContext is provided, PARTYTOPARTY is considered the default value.
enum:
- BILLPAYMENT
- ECOMMERCEGOODS
- ECOMMERCESERVICES
- OTHER
- PARTYTOPARTY
deliveryAddress:
$ref: '#/components/schemas/pispgateway.DeliveryAddress'
description: Delivery address, must be specified if paymentContextCode is 'ECOMMERCEGOODS'
merchant:
$ref: '#/components/schemas/pispgateway.MerchantDetails'
description: The merchant for the payment context
required:
- merchant
pispgateway.CreatePaymentInitiationRequest:
type: object
description: Request object to Initiate Payment
properties:
paymentAmount:
$ref: '#/components/schemas/pispgateway.PaymentAmount'
description: The amount of the payment
paymentReference:
type: string
description: Reference to be used for the Payment. This will appear on the Account statement/the recipient's bank account. Min 6 to max 18 characters. Can contain alphanumeric, '-', '.', '&', '/' and space.
example: Invoice ABC123
minLength: 1
destination:
$ref: '#/components/schemas/pispgateway.Destination'
description: The destination account for the payment
aspspId:
type: string
description: Identifier for ASPSP being used for the payment
example: H100000001
minLength: 1
paymentContext:
$ref: '#/components/schemas/pispgateway.LegacyPaymentContext'
description: Payment context used to specify additional details for risk scoring
required:
- aspspId
- destination
- paymentAmount
- paymentReference
pispgateway.Capability:
type: object
properties:
type:
type: string
description: Type of the capability.
enum:
- SINGLE_IMMEDIATE
- STANDING_ORDER
- SWEEPING_VRP
- COMMERCIAL_VRP
example: SINGLE_IMMEDIATE
status:
type: string
description: Status of the capability.
enum:
- ENABLED
- DISABLED
example: ENABLED
pispgateway.CreatePaymentInitiationResponse:
type: object
description: Response object to Initiate Payment
properties:
paymentInitiationId:
type: string
description: The unique identifier of the payment initiation request at Modulr
example: I000000001
redirectUrl:
type: string
description: A redirect URL for the user to authorise the payment initiation request at the ASPSP
example: https://www.bankofmoney.com/authorize
pispgateway.LegacyPaymentContext:
type: object
description: Payment context for the initiation request
properties:
paymentContextCode:
type: string
description: Indicates type of Payment Context, can be one of BILLPAYMENT, ECOMMERCEGOODS, ECOMMERCESERVICES, OTHER, PARTYTOPARTY. If no value or paymentContext is provided, PARTYTOPARTY is considered the default value.
enum:
- BILLPAYMENT
- ECOMMERCEGOODS
- ECOMMERCESERVICES
- OTHER
- PARTYTOPARTY
deliveryAddress:
$ref: '#/components/schemas/pispgateway.DeliveryAddress'
description: Delivery address, must be specified if paymentContextCode is 'ECOMMERCEGOODS'
merchantCategoryCode:
type: string
description: Merchant category code conform to ISO 18245, related to the type of services or goods provided for the transaction. Must be specified if paymentContextCode is either ECOMMERCEGOODS or ECOMMERCESERVICES
maxLength: 4
minLength: 3
merchantCustomerIdentification:
type: string
description: Merchant customer identification, must be specified if paymentContextCode is either ECOMMERCEGOODS or ECOMMERCESERVICES
maxLength: 70
minLength: 1
pispgateway.CreateStandingOrderInitiationResponse:
type: object
description: Response object to Initiate Standing Order
properties:
standingOrderInitiationId:
type: string
description: The unique identifier of the standing order initiation request at Modulr
example: I000000001
redirectUrl:
type: string
description: A redirect URL for the user to authorise the standing order initiation request at the ASPSP
example: https://www.bankofmoney.com/authorize
pispgateway.MerchantDetails:
type: object
description: Merchant details for the payment context
properties:
categoryCode:
type: string
description: Merchant category code conform to ISO 18245, related to the type of services or goods provided for the transaction. Must be specified if paymentContextCode is either ECOMMERCEGOODS or ECOMMERCESERVICES
maxLength: 4
minLength: 3
customerId:
type: string
description: Merchant customer identification, must be specified if paymentContextCode is either ECOMMERCEGOODS or ECOMMERCESERVICES
maxLength: 70
minLength: 1
pispgateway.StandingOrderInitiationResponse:
type: object
description: Response object for Get Standing Order Initiation
properties:
id:
type: string
description: The identifier of the standing order initiation
example: I000000001
payment:
$ref: '#/components/schemas/pispgateway.StandingOrderPayment'
description: The payment of the standing order
schedule:
$ref: '#/components/schemas/pispgateway.StandingOrderSchedule'
description: The schedule of the standing order
status:
type: string
description: The status of the standing order initiation, can be one of SUBMITTED, AWAITING_CONSENT, CONSENT_REJECTED, EXECUTED, ER_EXPIRED, ER_EXTSYS, ER_GENERAL
example: AWAITING_CONSENT
aspspId:
type: string
description: The identifier of the ASPSP used for the standing order
example: H100000001
standingOrderStatus:
type: string
description: The status of the standing order at the ASPSP. When available, this is passed through from the ASPSP without modification.
example: InitiationCompleted
pispgateway.StandingOrderPayment:
type: object
description: The payment of the standing order
properties:
destination:
$ref: '#/components/schemas/pispgateway.Destination'
description: The destination account for the payment
amount:
$ref: '#/components/schemas/pispgateway.StandingOrderPaymentAmount'
description: The amount of the standing order
reference:
type: string
description: Reference to be used for the Payment. This will appear on the Account statement/the recipient's bank account. Min 6 to max 18 characters. Can contain alphanumeric, '-', '.', '&', '/' and space.
example: Invoice ABC123
minLength: 1
required:
- amount
- destination
- reference
pispgateway.MessageResponse:
type: object
properties:
field:
type: string
code:
type: string
enum:
- GENERAL
- BUSINESSRULE
- MFASTATUS
- MFAERROR
- MFATIMEOUT
- MFADEVICEMM
- MFAMESSAGEINVALID
- NOTFOUND
- DUPLICATE
- INVALID
- CONNECTION
- RETRY
- RATELIMIT
- PERMISSION
- NOTACCEPTABLE
- MFAVERIFICATION
- TOKENEXPIRED
errorCode:
type: string
message:
type: string
sourceService:
type: string
pispgateway.StandingOrderPaymentAmount:
type: object
description: The amount of the standing order
properties:
currency:
type: string
description: Currency of the account in ISO 4217 format. Default is GBP
enum:
- GBP
recurringAmount:
type: number
description: Recurring amount of the payment in Major Currency Units - '1' = 1.00 GBP
example: '100.00'
maximum: 2147483647
minimum: 0.01
required:
- currency
- recurringAmount
securitySchemes:
modulo_security:
type: apiKey
name: Authorization
in: header
TOKEN:
type: apiKey
name: Authorization
in: header
x-readme:
proxy-enabled: false