name: repairshopr-payment description: Create and manage payments in RepairShopr to invoice customers license: MIT compatibility: opencode metadata: audience: accountants, receptionists, administrators api: GET /payments, POST /payments, GET /payments/{id}
What I do
I manage payments in RepairShopr. Payments represent money received from customers, typically applied to invoices. I can list payments, create new payments (including credit card processing if configured), and retrieve individual payment details.
When to use me
Use this when:
- Recording a payment from a customer (cash, check, credit card)
- Applying a payment to one or more invoices
- Looking up payment history
- Verifying payment amounts and methods
How to use
Required API base URL:
VITE_REPAIRSHOPR_SUBDOMAINVITE_REPAIRSHOPR_API_KEY
Permissions:
- "Payments - View List" for listing and viewing single payment
- "Payments - Create" for creating payments
List Payments (GET /payments) Optional:
query(string) - Search paymentspage(integer) - Page number (25 results per page)
Create Payment (POST /payments) At minimum, you need to specify either:
- Customer payment:
customer_id+amount_cents+payment_method - Invoice payment:
invoice_id+amount_cents(and optionallypayment_method)
Common parameters:
customer_id(integer) - Customer making paymentinvoice_id(integer) - Invoice to apply to (can be omitted for on-account payments)invoice_number(string) - Alternative to invoice_idamount_cents(integer) - Payment amount in cents (e.g., 1000 = $10.00)payment_method(string) - Method: "Cash", "Check", "Credit Card", "Other", etc.ref_num(string) - Reference number (check number, transaction ID)apply_payments(object) - For applying to multiple invoices:{ invoice_id: amount, ... }address_street,address_city,address_zip- For credit card address verificationcredit_card_number,date_month,date_year,cvv- For direct credit card processingfirstname,lastname- Cardholder namesignature_name,signature_data,signature_date- For signature capture
Get Payment (GET /payments/{id})
id(integer) - Payment ID
Example call:
// Record a cash payment applied to an invoice
const payment = await skill({ name: "repairshopr-payment" }, {
invoice_id: 123,
amount_cents: 2500, // $25.00
payment_method: "Cash",
ref_num: "CASH-2024-001"
})
// Record a credit card payment
const ccPayment = await skill({ name: "repairshopr-payment" }, {
customer_id: 123,
amount_cents: 4999,
payment_method: "Credit Card",
credit_card_number: "4111111111111111",
date_month: "12",
date_year: "2025",
cvv: "123",
firstname: "John",
lastname: "Doe"
})
Response includes:
- Payment object with
id,payment_amount,invoice_ids(array of applied invoices),payment_method,successflag,applied_at,signature_dataif any, and embeddedcustomerinfo
Important
- Amounts are in cents to avoid floating point errors
- If
invoice_idis provided, payment is automatically applied to that invoice apply_paymentsallows splitting a payment across multiple invoices- Credit card processing requires proper gateway configuration in RepairShopr
- Payments can be recorded without applying to specific invoices (on-account)
- Returns 422 if validation fails (invalid card, amount too high, etc.)
Related skills
repairshopr-invoice- To create invoices firstrepairshopr-payment-method- For available payment method configurationsrepairshopr-payment-profile- For stored customer payment profiles