agentleFS
newline53newline53/newline-mcp-server/skills/making-payments/SKILL.md

making-payments

Skill2 starsChanged 7 months agoApache-2.0View on GitHub

General payment initiation workflow for the Newline MCP server. Use when you need to prepare and create a wire, ACH, or instant payment transfer, validate the source and destination accounts, and explain rail-specific requirements. Prefer this skill for end-to-end payment execution across Claude Code, Codex, Pi, and other Agent Skills compatible harnesses.

The file

We split this skill into the rules it gives an agent

9 rules. About 0 are common, 8 are distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈8

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Verify the initiating customer is active and KYC-approved before sending funds.

    line 15
  2. Distinctive:

    If you have the UID:

    line 20
  3. Distinctive:

    Stop if the customer is not in a valid state to initiate payments.

    line 38
  4. Distinctive:

    If needed, drill into a known account:

    line 48
  5. Distinctive:

    If the destination belongs to another known customer, resolve them first:

    line 71
  6. Very specific:

    If no destination synthetic account exists yet, switch to new-account-setup or managing-users-and-accounts before proceeding.

    line 79
  7. Distinctive:

    Use for traditional wire transfers when the user provides routing instructions.

    line 94
  8. Distinctive:

    Use for immediate payment workflows that require transmitter identity and address details.

    line 132
  9. Distinctive:

    If needed, re-check with:

    line 170

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Making Payments

A broad skill for preparing and initiating Newline transfers. For a narrower transfer-only flow, create-transfer may be sufficient.

Guardrails

  • Confirm with the user before calling create-newline-transfer.
  • Resolve names and emails to customer and account UIDs first.
  • Verify the initiating customer is active and KYC-approved before sending funds.
  • Transfers are asynchronous; initial status may be queued or pending.

Step 1 — Identify the Initiating Customer

If you have the UID:

get-customer  uid=<customer_uid>

Otherwise search first:

list-customers  (filter by first_name, last_name, email, external_uid, or pool_uid)

Record:

  • uid → initiating_customer_uid
  • status
  • kyc_status
  • pool_uids

Stop if the customer is not in a valid state to initiate payments.

Step 2 — Identify the Source Account

Inspect available synthetic accounts:

get-synthetic-accounts

If needed, drill into a known account:

get-synthetic-account  uid=<source_synthetic_account_uid>

Confirm:

  • the account belongs to the correct customer or pool
  • the account is active
  • the available balance is sufficient
  • the relevant payment rail details exist for the intended use

Step 3 — Identify the Destination Account

This server creates transfers between two synthetic accounts, so you need a destination_synthetic_account_uid.

To find one:

get-synthetic-accounts

If the destination belongs to another known customer, resolve them first:

list-customers
get-customer  uid=<destination_customer_uid>
get-synthetic-accounts

If no destination synthetic account exists yet, switch to new-account-setup or managing-users-and-accounts before proceeding.

Step 4 — Choose the Transfer Rail

Exactly one of these blocks must be supplied.

Wire

wire: {
  wire_instructions
}

Use for traditional wire transfers when the user provides routing instructions.

ACH

ach: {
  sec_code,
  service_processing,
  originator_name,
  company_id,
  prenote,
  entry_description,
  effective_entry_date,
  id_number
}

Collect all ACH fields up front. Keep entry_description short and business-appropriate.

Instant Payment

instant_payment: {
  memo,
  instant_payment_transmitter: {
    name,
    transmitter_identifier,
    street_number,
    street1,
    street2,
    city,
    state,
    postal_code,
    country
  }
}

Use for immediate payment workflows that require transmitter identity and address details.

Step 5 — Gather Common Transfer Inputs

Every transfer requires:

  • external_uid — unique idempotency identifier
  • initiating_customer_uid
  • initiator_type — usually customer
  • source_synthetic_account_uid
  • destination_synthetic_account_uid
  • usd_transfer_amount — string value such as "100.00"
  • exactly one of wire, ach, or instant_payment

Step 6 — Create the Transfer

Only after confirmation:

create-newline-transfer
  external_uid
  initiating_customer_uid
  initiator_type
  source_synthetic_account_uid
  destination_synthetic_account_uid
  usd_transfer_amount
  wire | ach | instant_payment

Step 7 — Verify and Communicate Status

After creation, report:

  • transfer uid
  • status
  • transfer type
  • amount
  • source and destination account UIDs
  • any associated transaction_uids

If needed, re-check with:

get-newline-transfer  uid=<transfer_uid>

Step 8 — Hand Off to Monitoring or Investigation

For follow-up work, use:

  • investigate-transfer for one transfer deep-dives
  • payment-operations for returns and post-payment issues
  • transaction-reporting for status tracking and audit history

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.