curl --request GET \
--url https://api-sb.meld.io/network-partner/supported/payment-methods/requirementsimport requests
url = "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-sb.meld.io/network-partner/supported/payment-methods/requirements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-sb.meld.io/network-partner/supported/payment-methods/requirements")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sb.meld.io/network-partner/supported/payment-methods/requirements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"requirements": [
{
"serviceProvider": "DUENETWORK",
"category": "CRYPTO_OFFRAMP",
"paymentMethod": "DO_BANK_TRANSFER",
"countryCode": "DO",
"accountHolderType": "INDIVIDUAL",
"fields": [
{
"key": "bankCode",
"label": "Bank / institution code",
"fieldType": "STRING",
"required": true,
"providerPath": "financialInstitutionId",
"displayOrder": 1
}
]
}
]
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}Search payment method field requirements
Returns per-provider field requirements and provider API path mappings for a payment method. Nested field key values are the leaf JSON property (city), not the catalog PK (beneficiaryAddress.city); nest them under parentKey. When serviceProvider is omitted, returns the union of required fields across providers (one block per category + payment method + country + accountHolderType; providerPath is omitted). allowedValues is returned only when all providers contributing that field publish the same non-empty, case-sensitive set (order and exact duplicates do not matter). Missing or differing sets omit options; omission does not mean unrestricted. Validate against provider-scoped requirements. A field is required if any matching provider requires it. The response is the account-facing contract for the requested category. Offramp keys with derived=false are what the account sends in payout details; onramp keys are the receiving-bank fields on the deposit instruction. derived=true fields (accountHolderType, firstName, lastName, fullName) are still required by the provider; Meld fills them from the customer. Omit accountHolderType to return both the INDIVIDUAL and BUSINESS slices. All filters are optional and can be combined; providing no filters returns the union across all stored requirements. Provider scope rules:
- No Basic Auth and no
Meld-Account-Id: results come from the global dataset. - Basic Auth only: results are restricted to the authenticated identity’s
providersclaim. Meld-Account-Idonly: results are restricted to providers configured for that account.- Both Basic Auth and
Meld-Account-Id: results are restricted to the intersection of both provider sets. - Explicit partner filters are intersected with the resolved provider scope.
Explicit serviceProvider filtering is intersected with the resolved provider scope.
If the effective provider scope contains no providers, this collection endpoint returns 200 with an empty result.
curl --request GET \
--url https://api-sb.meld.io/network-partner/supported/payment-methods/requirementsimport requests
url = "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://api-sb.meld.io/network-partner/supported/payment-methods/requirements', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api-sb.meld.io/network-partner/supported/payment-methods/requirements"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api-sb.meld.io/network-partner/supported/payment-methods/requirements")
.asString();require 'uri'
require 'net/http'
url = URI("https://api-sb.meld.io/network-partner/supported/payment-methods/requirements")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"requirements": [
{
"serviceProvider": "DUENETWORK",
"category": "CRYPTO_OFFRAMP",
"paymentMethod": "DO_BANK_TRANSFER",
"countryCode": "DO",
"accountHolderType": "INDIVIDUAL",
"fields": [
{
"key": "bankCode",
"label": "Bank / institution code",
"fieldType": "STRING",
"required": true,
"providerPath": "financialInstitutionId",
"displayOrder": 1
}
]
}
]
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}{
"code": "BAD_REQUEST",
"message": "<string>",
"timestamp": "2023-11-07T05:31:56Z",
"requestId": "<string>"
}Headers
Dated API version to use for this request, e.g. 2026-02-03.
"2026-02-03"
Optional. Base58 encoded account id. Restricts results to providers configured for the account. If Basic Auth is also present, the effective scope is the intersection of authenticated providers and account providers.
Query Parameters
Individual or business slice. Omit to return both. Customer type for a payment method field requirement slice
INDIVIDUAL, BUSINESS Provider category Categories of functionality offered by a service provider
CRYPTO_ONRAMP, CRYPTO_OFFRAMP, CRYPTO_TRANSFER, BANK_LINKING, FIAT_PAYMENTS, CRYPTO_VIRTUAL_ACCOUNT_ONRAMP, CRYPTO_VIRTUAL_ACCOUNT_OFFRAMP, CUSTOMER_KYC, CRYPTO_ONRAMP_SWAP, CRYPTO_OFFRAMP_SWAP Country code
Canonical payment method code
Service provider identifier
Response
Payment method field requirements
Response wrapper for payment method field requirements
List of payment method field requirements
Show child attributes
Show child attributes