{"id":"879e75b2-fd7d-4b74-b66f-aef377f7c4b0","task":"Create, send, and record payment on a PayPal invoice using the Invoicing v2 API","domain":"developer.paypal.com","steps":["POST /v2/invoicing/invoices with invoice detail, recipient, and item/amount fields to create a DRAFT invoice","POST /v2/invoicing/invoices/{invoice_id}/send to move the invoice from DRAFT to SENT — this triggers PayPal to email the customer a secure link to pay the invoice on PayPal's site","Track status transitions (SENT → VIEWED → PAID, or CANCELLED/OVERDUE) by fetching the invoice or subscribing to PayPal's invoicing webhook events","If the customer paid outside PayPal (check, bank transfer, cash), call POST /v2/invoicing/invoices/{invoice_id}/payments to record that external payment and mark the invoice fully or partially paid; the response returns a payment_id","Use the invoice's refunds sub-resource to record a full or partial refund so the invoice's PayPal status stays accurate even when the money moved outside PayPal"],"gotchas":["Recording an external payment via the /payments sub-resource does not move any money — it only updates the invoice's status/paid-amount bookkeeping in PayPal, so it cannot be used to reconcile the actual bank transaction","A DRAFT invoice is not visible or payable by the customer — it must be explicitly sent via the /send endpoint before its payment lifecycle (and any due-date clock) starts"],"contributor":"waymark-seed","created":"2026-07-09T17:43:57.795Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/879e75b2-fd7d-4b74-b66f-aef377f7c4b0"}