> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.mercoa.com/embedded-ap-ar/api-reference/custom-payment-method-schema/update/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.mercoa.com/_mcp/server. # Update POST https://api.mercoa.com/paymentMethod/schema/{schemaId} Content-Type: application/json Update custom payment method schema Reference: https://docs.mercoa.com/embedded-ap-ar/api-reference/custom-payment-method-schema/update ## Authentication - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Path parameters - `schemaId` (string, required) ### Body (application/json) This endpoint expects an object. - `name` (string, required) - `isSource` (boolean, required) — This payment method can be used as a payment source for an invoice - `isDestination` (boolean, required) — This payment method can be used as a payment destination for an invoice - `fields` (list of object, required) - `name` (string, required) - `type` (enum, required) - Allowed values: `text`, `number`, `select`, `date`, `phone`, `email`, `url`, `dynamicUrl`, `embeddedUrl`, `address`, `usBankRoutingNumber`, `usBankAccountNumber` - `optional` (boolean, required) — Indicates whether this field is optional - `displayName` (string, optional) - `useAsAccountName` (boolean, optional) — Indicates whether this field should be used as the name of the payment method. Only one field can be used as the name. Will set the accountName field of the payment method to the value of this field. - `useAsAccountNumber` (boolean, optional) — Indicates whether this field should be used as the account number of the payment method. Only one field can be used as the account number. Will set the accountNumber field of the payment method to the value of this field. - `options` (list of string, optional) — When type is 'select', provide options that can be selected - `supportedCurrencies` (list of enum, optional) — List of currencies that this payment method supports. If not provided, the payment method will support only USD. - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL` - `estimatedProcessingTime` (integer, optional) — Estimated time in days for this payment method to process a payments. Set as 0 for same-day payment methods, -1 for unknown processing time. - `maxAmount` (double, optional) — The maximum amount that can be transferred from this payment method in a single transaction. - `minAmount` (double, optional) — The minimum amount that can be transferred from this payment method in a single transaction. Default is 1. ## Response ### 200 - `id` (string, required) - `name` (string, required) - `isSource` (boolean, required) — This payment method can be used as a payment source for an invoice - `isDestination` (boolean, required) — This payment method can be used as a payment destination for an invoice - `supportedCurrencies` (list of enum, required) — List of currencies that this payment method supports. - Allowed values: `AED`, `AFN`, `ALL`, `AMD`, `ANG`, `AOA`, `ARS`, `AUD`, `AWG`, `AZN`, `BAM`, `BBD`, `BDT`, `BGN`, `BHD`, `BIF`, `BMD`, `BND`, `BOB`, `BOV`, `BRL`, `BSD`, `BTN`, `BWP`, `BYN`, `BZD`, `CAD`, `CDF`, `CHE`, `CHF`, `CHW`, `CLF`, `CLP`, `COP`, `COU`, `CRC`, `CUC`, `CUP`, `CVE`, `CZK`, `DJF`, `DKK`, `DOP`, `DZD`, `EGP`, `ERN`, `ETB`, `EUR`, `FJD`, `FKP`, `GBP`, `GEL`, `GHS`, `GIP`, `GMD`, `GNF`, `GTQ`, `GYD`, `HKD`, `HNL`, `HTG`, `HUF`, `IDR`, `ILS`, `INR`, `IQD`, `IRR`, `ISK`, `JMD`, `JOD`, `JPY`, `KES`, `KGS`, `KHR`, `KMF`, `KPW`, `KRW`, `KWD`, `KYD`, `KZT`, `LAK`, `LBP`, `LKR`, `LRD`, `LSL`, `LYD`, `MAD`, `MDL`, `MGA`, `MKD`, `MMK`, `MNT`, `MOP`, `MRU`, `MUR`, `MVR`, `MWK`, `MXN`, `MXV`, `MYR`, `MZN`, `NAD`, `NGN`, `NIO`, `NOK`, `NPR`, `NZD`, `OMR`, `PAB`, `PEN`, `PGK`, `PHP`, `PKR`, `PLN`, `PYG`, `QAR`, `RON`, `RSD`, `CNY`, `RUB`, `RWF`, `SAR`, `SBD`, `SCR`, `SDG`, `SEK`, `SGD`, `SHP`, `SLE`, `SLL`, `SOS`, `SRD`, `SSP`, `STN`, `SVC`, `SYP`, `SZL`, `THB`, `TJS`, `TMT`, `TND`, `TOP`, `TRY`, `TTD`, `TWD`, `TZS`, `UAH`, `UGX`, `USD`, `USN`, `UYI`, `UYU`, `UYW`, `UZS`, `VED`, `VES`, `VND`, `VUV`, `WST`, `XAF`, `XAG`, `XAU`, `XBA`, `XBB`, `XBC`, `XBD`, `XCD`, `XDR`, `XOF`, `XPD`, `XPF`, `XPT`, `XSU`, `XTS`, `XUA`, `XXX`, `YER`, `ZAR`, `ZMW`, `ZWL` - `fields` (list of object, required) - `name` (string, required) - `type` (enum, required) - Allowed values: `text`, `number`, `select`, `date`, `phone`, `email`, `url`, `dynamicUrl`, `embeddedUrl`, `address`, `usBankRoutingNumber`, `usBankAccountNumber` - `optional` (boolean, required) — Indicates whether this field is optional - `displayName` (string, optional) - `useAsAccountName` (boolean, optional) — Indicates whether this field should be used as the name of the payment method. Only one field can be used as the name. Will set the accountName field of the payment method to the value of this field. - `useAsAccountNumber` (boolean, optional) — Indicates whether this field should be used as the account number of the payment method. Only one field can be used as the account number. Will set the accountNumber field of the payment method to the value of this field. - `options` (list of string, optional) — When type is 'select', provide options that can be selected - `estimatedProcessingTime` (integer, required) — Estimated time in days for this payment method to process a payments. 0 is an same-day payment methods, -1 is unknown processing time. - `createdAt` (datetime, required) - `updatedAt` (datetime, required) - `maxAmount` (double, optional) — The maximum amount that can be transferred from this payment method in a single transaction. - `minAmount` (double, optional) — The minimum amount that can be transferred from this payment method in a single transaction. Default is 1. ## Errors ### 400 Bad Request - `errorName` ("BadRequest", required) - `content` (string, required) ### 401 Unauthorized - `errorName` ("Unauthorized", required) - `content` (string, required) ### 403 Forbidden - `errorName` ("Forbidden", required) - `content` (string, required) ### 404 Not Found - `errorName` ("NotFound", required) - `content` (string, required) ### 409 Conflict - `errorName` ("Conflict", required) - `content` (string, required) ### 500 Internal Server Error - `errorName` ("InternalServerError", required) - `content` (string, required) ### 501 Unimplemented - `errorName` ("Unimplemented", required) - `content` (string, required) ## Examples ### Check **Request** ```json { "name": "Check", "isSource": false, "isDestination": true, "fields": [ { "name": "payToTheOrderOf", "type": "text", "optional": false, "displayName": "Pay To The Order Of" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" }, { "name": "address", "type": "address", "optional": false, "displayName": "Address" } ], "supportedCurrencies": [ "USD" ], "estimatedProcessingTime": 7, "maxAmount": 50000, "minAmount": 1 } ``` **Response** ```json { "id": "cpms_14f78dcd-4614-426e-a37a-7af262431d41", "name": "Check", "isSource": false, "isDestination": true, "supportedCurrencies": [ "USD" ], "fields": [ { "name": "payToTheOrderOf", "type": "text", "optional": false, "displayName": "Pay To The Order Of" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" }, { "name": "address", "type": "address", "optional": false, "displayName": "Address" } ], "estimatedProcessingTime": 7, "createdAt": "2021-01-01T00:00:00Z", "updatedAt": "2021-01-01T00:00:00Z", "maxAmount": 50000, "minAmount": 1 } ``` **SDK Code** ```python Check import requests url = "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41" payload = { "name": "Check", "isSource": False, "isDestination": True, "fields": [ { "name": "payToTheOrderOf", "type": "text", "optional": False, "displayName": "Pay To The Order Of" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": False, "displayName": "Account Number", "useAsAccountNumber": True }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": False, "displayName": "Routing Number" }, { "name": "address", "type": "address", "optional": False, "displayName": "Address" } ], "supportedCurrencies": ["USD"], "estimatedProcessingTime": 7, "maxAmount": 50000, "minAmount": 1 } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.json()) ``` ```typescript Check import { MercoaClient } from "@mercoa/javascript"; const client = new MercoaClient({ token: "YOUR_TOKEN" }); await client.customPaymentMethodSchema.update("cpms_14f78dcd-4614-426e-a37a-7af262431d41", { name: "Check", isSource: false, isDestination: true, supportedCurrencies: ["USD"], fields: [{ name: "payToTheOrderOf", displayName: "Pay To The Order Of", type: "text", optional: false }, { name: "accountNumber", displayName: "Account Number", type: "usBankAccountNumber", optional: false, useAsAccountNumber: true }, { name: "routingNumber", displayName: "Routing Number", type: "usBankRoutingNumber", optional: false }, { name: "address", displayName: "Address", type: "address", optional: false }], estimatedProcessingTime: 7, maxAmount: 50000, minAmount: 1 }); ``` ```go Check package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41" payload := strings.NewReader("{\n \"name\": \"Check\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"payToTheOrderOf\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Pay To The Order Of\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n },\n {\n \"name\": \"address\",\n \"type\": \"address\",\n \"optional\": false,\n \"displayName\": \"Address\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\"\n ],\n \"estimatedProcessingTime\": 7,\n \"maxAmount\": 50000,\n \"minAmount\": 1\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "Bearer ") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Check require 'uri' require 'net/http' url = URI("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer ' request["Content-Type"] = 'application/json' request.body = "{\n \"name\": \"Check\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"payToTheOrderOf\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Pay To The Order Of\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n },\n {\n \"name\": \"address\",\n \"type\": \"address\",\n \"optional\": false,\n \"displayName\": \"Address\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\"\n ],\n \"estimatedProcessingTime\": 7,\n \"maxAmount\": 50000,\n \"minAmount\": 1\n}" response = http.request(request) puts response.read_body ``` ```java Check import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.post("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41") .header("Authorization", "Bearer ") .header("Content-Type", "application/json") .body("{\n \"name\": \"Check\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"payToTheOrderOf\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Pay To The Order Of\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n },\n {\n \"name\": \"address\",\n \"type\": \"address\",\n \"optional\": false,\n \"displayName\": \"Address\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\"\n ],\n \"estimatedProcessingTime\": 7,\n \"maxAmount\": 50000,\n \"minAmount\": 1\n}") .asString(); ``` ```php Check request('POST', 'https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41', [ 'body' => '{ "name": "Check", "isSource": false, "isDestination": true, "fields": [ { "name": "payToTheOrderOf", "type": "text", "optional": false, "displayName": "Pay To The Order Of" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" }, { "name": "address", "type": "address", "optional": false, "displayName": "Address" } ], "supportedCurrencies": [ "USD" ], "estimatedProcessingTime": 7, "maxAmount": 50000, "minAmount": 1 }', 'headers' => [ 'Authorization' => 'Bearer ', 'Content-Type' => 'application/json', ], ]); echo $response->getBody(); ``` ```csharp Check using RestSharp; var client = new RestClient("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41"); var request = new RestRequest(Method.POST); request.AddHeader("Authorization", "Bearer "); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"name\": \"Check\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"payToTheOrderOf\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Pay To The Order Of\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n },\n {\n \"name\": \"address\",\n \"type\": \"address\",\n \"optional\": false,\n \"displayName\": \"Address\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\"\n ],\n \"estimatedProcessingTime\": 7,\n \"maxAmount\": 50000,\n \"minAmount\": 1\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift Check import Foundation let headers = [ "Authorization": "Bearer ", "Content-Type": "application/json" ] let parameters = [ "name": "Check", "isSource": false, "isDestination": true, "fields": [ [ "name": "payToTheOrderOf", "type": "text", "optional": false, "displayName": "Pay To The Order Of" ], [ "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true ], [ "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" ], [ "name": "address", "type": "address", "optional": false, "displayName": "Address" ] ], "supportedCurrencies": ["USD"], "estimatedProcessingTime": 7, "maxAmount": 50000, "minAmount": 1 ] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "POST" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ``` ### Wire **Request** ```json { "name": "Wire", "isSource": false, "isDestination": true, "fields": [ { "name": "bankName", "type": "text", "optional": false, "displayName": "Bank Name" }, { "name": "recipientName", "type": "text", "optional": false, "displayName": "Recipient Name" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" } ], "supportedCurrencies": [ "USD", "EUR" ], "estimatedProcessingTime": 0, "maxAmount": 100000, "minAmount": 1 } ``` **Response** ```json { "id": "cpms_4794d597-70dc-4fec-b6ec-c5988e759769", "name": "Wire", "isSource": false, "isDestination": true, "supportedCurrencies": [ "USD", "EUR" ], "fields": [ { "name": "bankName", "type": "text", "optional": false, "displayName": "Bank Name" }, { "name": "recipientName", "type": "text", "optional": false, "displayName": "Recipient Name" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" } ], "estimatedProcessingTime": 0, "createdAt": "2021-01-01T00:00:00Z", "updatedAt": "2021-01-01T00:00:00Z", "maxAmount": 100000, "minAmount": 1 } ``` **SDK Code** ```python Wire import requests url = "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41" payload = { "name": "Wire", "isSource": False, "isDestination": True, "fields": [ { "name": "bankName", "type": "text", "optional": False, "displayName": "Bank Name" }, { "name": "recipientName", "type": "text", "optional": False, "displayName": "Recipient Name" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": False, "displayName": "Account Number", "useAsAccountNumber": True }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": False, "displayName": "Routing Number" } ], "supportedCurrencies": ["USD", "EUR"], "estimatedProcessingTime": 0, "maxAmount": 100000, "minAmount": 1 } headers = { "Authorization": "Bearer ", "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers) print(response.json()) ``` ```typescript Wire import { MercoaClient } from "@mercoa/javascript"; const client = new MercoaClient({ token: "YOUR_TOKEN" }); await client.customPaymentMethodSchema.update("cpms_14f78dcd-4614-426e-a37a-7af262431d41", { name: "Wire", isSource: false, isDestination: true, supportedCurrencies: ["USD", "EUR"], fields: [{ name: "bankName", displayName: "Bank Name", type: "text", optional: false }, { name: "recipientName", displayName: "Recipient Name", type: "text", optional: false }, { name: "accountNumber", displayName: "Account Number", type: "usBankAccountNumber", optional: false, useAsAccountNumber: true }, { name: "routingNumber", displayName: "Routing Number", type: "usBankRoutingNumber", optional: false }], estimatedProcessingTime: 0, maxAmount: 100000, minAmount: 1 }); ``` ```go Wire package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41" payload := strings.NewReader("{\n \"name\": \"Wire\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"bankName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Bank Name\"\n },\n {\n \"name\": \"recipientName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Recipient Name\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\",\n \"EUR\"\n ],\n \"estimatedProcessingTime\": 0,\n \"maxAmount\": 100000,\n \"minAmount\": 1\n}") req, _ := http.NewRequest("POST", url, payload) req.Header.Add("Authorization", "Bearer ") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Wire require 'uri' require 'net/http' url = URI("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer ' request["Content-Type"] = 'application/json' request.body = "{\n \"name\": \"Wire\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"bankName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Bank Name\"\n },\n {\n \"name\": \"recipientName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Recipient Name\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\",\n \"EUR\"\n ],\n \"estimatedProcessingTime\": 0,\n \"maxAmount\": 100000,\n \"minAmount\": 1\n}" response = http.request(request) puts response.read_body ``` ```java Wire import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.post("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41") .header("Authorization", "Bearer ") .header("Content-Type", "application/json") .body("{\n \"name\": \"Wire\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"bankName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Bank Name\"\n },\n {\n \"name\": \"recipientName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Recipient Name\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\",\n \"EUR\"\n ],\n \"estimatedProcessingTime\": 0,\n \"maxAmount\": 100000,\n \"minAmount\": 1\n}") .asString(); ``` ```php Wire request('POST', 'https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41', [ 'body' => '{ "name": "Wire", "isSource": false, "isDestination": true, "fields": [ { "name": "bankName", "type": "text", "optional": false, "displayName": "Bank Name" }, { "name": "recipientName", "type": "text", "optional": false, "displayName": "Recipient Name" }, { "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true }, { "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" } ], "supportedCurrencies": [ "USD", "EUR" ], "estimatedProcessingTime": 0, "maxAmount": 100000, "minAmount": 1 }', 'headers' => [ 'Authorization' => 'Bearer ', 'Content-Type' => 'application/json', ], ]); echo $response->getBody(); ``` ```csharp Wire using RestSharp; var client = new RestClient("https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41"); var request = new RestRequest(Method.POST); request.AddHeader("Authorization", "Bearer "); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"name\": \"Wire\",\n \"isSource\": false,\n \"isDestination\": true,\n \"fields\": [\n {\n \"name\": \"bankName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Bank Name\"\n },\n {\n \"name\": \"recipientName\",\n \"type\": \"text\",\n \"optional\": false,\n \"displayName\": \"Recipient Name\"\n },\n {\n \"name\": \"accountNumber\",\n \"type\": \"usBankAccountNumber\",\n \"optional\": false,\n \"displayName\": \"Account Number\",\n \"useAsAccountNumber\": true\n },\n {\n \"name\": \"routingNumber\",\n \"type\": \"usBankRoutingNumber\",\n \"optional\": false,\n \"displayName\": \"Routing Number\"\n }\n ],\n \"supportedCurrencies\": [\n \"USD\",\n \"EUR\"\n ],\n \"estimatedProcessingTime\": 0,\n \"maxAmount\": 100000,\n \"minAmount\": 1\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ``` ```swift Wire import Foundation let headers = [ "Authorization": "Bearer ", "Content-Type": "application/json" ] let parameters = [ "name": "Wire", "isSource": false, "isDestination": true, "fields": [ [ "name": "bankName", "type": "text", "optional": false, "displayName": "Bank Name" ], [ "name": "recipientName", "type": "text", "optional": false, "displayName": "Recipient Name" ], [ "name": "accountNumber", "type": "usBankAccountNumber", "optional": false, "displayName": "Account Number", "useAsAccountNumber": true ], [ "name": "routingNumber", "type": "usBankRoutingNumber", "optional": false, "displayName": "Routing Number" ] ], "supportedCurrencies": ["USD", "EUR"], "estimatedProcessingTime": 0, "maxAmount": 100000, "minAmount": 1 ] as [String : Any] let postData = JSONSerialization.data(withJSONObject: parameters, options: []) let request = NSMutableURLRequest(url: NSURL(string: "https://api.mercoa.com/paymentMethod/schema/cpms_14f78dcd-4614-426e-a37a-7af262431d41")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "POST" request.allHTTPHeaderFields = headers request.httpBody = postData as Data let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```