1.5.0 • Published 3 years ago
paypal-invoices v1.5.0
paypal-invoices
An api wrapper for paypal 2.0 invoices.
Installing
npm i paypal-invoices
Getting Started
const { Invoices } = require('paypal-invoices')
const invoice = {...}
const main = async () => {
// Create a new API instance
const api = new Invoices(CLIENT_ID, CLIENT_SECRET)
// Or a sandbox api
// const api = new Invoices(CLIENT_ID, CLIENT_SECRET, true)
// Initialize the API
try {
await api.initialize();
} catch (e) {
console.log("Could not initialize");
return;
}
// Get the next Invoice number
const invoiceNum = await api.generateInvoiceNumber();
// Create a new Invoice draft
const link = await api.createDraftInvoice(/* Invoice Object*/);
// Get the created invoice
const invoiceDraft = await api.getInvoiceByLink(link);
// Send the new Invoice to the recipient
await api.sendInvoice(invoiceDraft.id);
};
main();
Logging
To enabled request logging, add the following environment variable.
PP_INVOICER:LOG=true
Roadmap
OAuth tokenholdingrefreshingRefresh on near expire
Generate invoice numberCreate draft invoiceList invoicesDelete invoiceFully update invoiceShow invoice detailsCancel sent invoiceGenerate QR codeRecord payment for invoiceDelete external paymentRecord refund for invoiceDelete external refundSend invoice reminderSend invoiceSearch invoicesSearch for invoices
- Templates
- Create template
- List templates
- Delete template
- Fully update template
- Show template details
- Common Object Definitions
- 202_response
address_details- address_portable
- address_portable_postal_code_validation
- aggregated_discount
amount_range- amount_summary_detail
amount_with_breakdownbilling_info- business_name
- business_name_validation
- configuration
- contact_information
- country_code
- currency_code
- custom_amount
- date_no_time
date_range- date_time
date_time_rangedetaildiscount- email_address
- error
- error_details
- field
- file_reference
invoice- invoice_creation_flow
invoice_detail- invoice_number
invoice_payment_terminvoice_status- invoicer_info
- invoices
- item
- language
link_description- metadata
- money
name- name_validation
- notification
- partial_payment
- payment_detail
- payment_method
- payment_reference
- payment_term
- payment_term_type
- payment_type
- payments
- percentage
phone- phone_detail
- phone_type
- qr_config
- recipient_info
- refund_detail
- refund_reference
- refunds
- search_data
- shipping_cost
- tax
- template
- template_configuration
- template_detail
- template_display_preference
- template_info
- template_item_field
- template_item_setting
- template_metadata
- template_settings
- template_subtotal_field
- template_subtotal_setting
- templates
- unit_of_measure
Post-Complete Roadmap
- Data Validation