Update a merchant
Fully replace a merchant application and, optionally, change its status to retract or (re)send it for signature. Available only while the application is in the edit window — a merchant_status of new or sent_for_signature. Once signed or beyond, the record is locked and this returns 409.
Semantics:
- Full replace. The request body is the complete merchant application (the same schema as
POST /merchants); it replaces the merchant’s data in full. Send the application as it should now stand — the typical flow is read-modify-write:GETthe merchant, apply your changes,PUTit back. merchant_status: "new"retracts the application: every outstanding signature link is invalidated immediately. This is also the cancel flow — nothing is deleted, the record simply returns tonew.merchant_status: "sent_for_signature"issues a fresh single-use signature link to the signer as updated in the same request; if the application was already out for signature it is retracted first, so retract and resend happen atomically.- Any update to an application currently out for signature auto-retracts it back to
new, so changed data can never sit under a live link. Includemerchant_status: "sent_for_signature"in the same request to immediately reissue. rep_codeandplatformmust match the existing application and cannot be changed on update.- Sending can be expressed either way:
merchant_status: "sent_for_signature", or the create-styleauto_send_for_signature: truewhenmerchant_statusis omitted. An explicitmerchant_statusalways wins —merchant_status: "new"retracts and does not send even ifauto_send_for_signatureis true.
Status changes fire the standard merchant.new and merchant.sent_for_signature webhooks.
Authentication
Path parameters
Request
Doing Business As (DBA) name.
Currently supporting Fiserv and Payroc. Additional platforms may be added in the future. Must match the platform of the supplied rep_code.
Must be a rep_code that exists on your account. See the /rep_codes endpoint.
Ownership percentage of the signer (0-100). The sum of the signer’s and all additional owners’ ownership percentages must not exceed 100.
ID of the application template to use. Must be an application template available to your rep codes. If provided, mcc_code, business_desc, transaction percentages, volume fields, pricing, fees, and products are taken from the template.
If true, the application is emailed to the signer for signature once this request completes. On create (POST) this sends the initial signature request. On update (PUT) it (re)issues a fresh signature link and applies only when merchant_status is omitted — an explicit merchant_status takes precedence.
Fee details for the merchant. See the /platform_fees endpoint for the fees available for each platform. Ignored if application_template_id is provided.
Percentage of in-person transactions. Must sum to 100 with online_pct and telephone_pct.
Merchant Category Code (MCC). See /mcc for valid values. Ignored if application_template_id is provided.
Optional status action. new retracts (invalidates outstanding signature links); sent_for_signature (re)issues a fresh signature link to the signer. Omit to update application data without a status change.
Optional custom message included in the signature email. Only meaningful when merchant_status is sent_for_signature.
Percentage of online transactions. Must sum to 100 with in_person_pct and telephone_pct.
Additional non-signing owners. The signer is always submitted via the top-level signer_* fields; use this array only for other owners.
Additional platform-specific ownership types:
Fiserv - tax_exempt, public_corp, private_corp.
Payroc - s_corp, c_corp, other.
Phone number in the format ###-###-####.
Pricing details for the merchant. See the /pricing_types endpoint for the pricing types and fields available for each platform. Ignored if application_template_id is provided.
List of products associated with the merchant. See the /products endpoint for the product catalog. Ignored if application_template_id is provided.
Colon-delimited month numbers (e.g., 1:2:10 for January, February, and October). Required if seasonal is true.
Date of birth of the signer in the format mm/dd/yyyy.
Phone number in the format ###-###-####.
Residential state of the signer (uppercase 2-character abbreviation).
Tax identification number. Must be a 9-digit number (dashes allowed).
Percentage of telephone transactions. Must sum to 100 with in_person_pct and online_pct.
Response
Merchant updated successfully. Returns the full merchant record, the same shape as GET /merchants/{merchant_id}.