Copperx ACTION
Create Invoice
Create a new invoice See the documentation
- Action
- Writes data
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's Copperx account once, then configure and run Create Invoice from your backend or agent.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "copperx-create-invoice",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
copperx: { authProvisionId: "apn_xxxxxxx" },
description: "Description",
customFields: "Custom Fields",
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "copperx-create-invoice",
"configured_props": {
"copperx": { "authProvisionId": "apn_xxxxxxx" },
"description": "Description",
"customFields": "Custom Fields"
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "copperx",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "copperx-create-invoice",
arguments: {
description: "Description",
customFields: "Custom Fields",
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
description Description | string | The invoice's description. Optional |
customFields Custom Fields | object | The invoice's custom fields. Optional |
dueDate Due Date | string | The invoice's due date. Optional |
footer Footer | string | The additional invoice's footer. Optional |
fromInvoiceId From Invoice Id | string | The invoice Id of this invoice is from. Optional |
metadata Metadata | object | The additional invoice's metadata. Optional |
clientReferenceId Client Reference Id. | string | The client's reference Id. Optional |
customerId Customer Id | string | The id of the customer the invoice is for. Optional Dynamic |
lineItems Line Items | string | The line items to be used in checkout session See the documentation to further information about the Line Items object. Required |
paymentSetting Payment Setting | string | The list of chains allowed for the payment. If not provided, all chains supported by the organization are enabled. See the documentation to further information about the Payment Settings object. Optional |
REFERENCE
Tool details
Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.
- Registry key
- copperx-create-invoice
- Version
- 0.0.2
- App
- Copperx
- Authentication
- API key
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗