1. Invoices
BNW CORE SERVICE
  • Card Vaulting
    • Create a card vault session
      POST
  • Fee Lookups
    • Compute fees for a transaction
      POST
  • Intent Action Status Lookups
    • Look up the status of an intent action
      GET
  • Payment Intents
    • Create a payment intent
      POST
    • Cancel a payment intent
      PATCH
    • List payment intents
      GET
    • Retrieve a payment intent
      GET
  • Intent Actions
    • Create an intent action
      POST
    • Advance an intent action to the next step
      PATCH
    • Retrieve the authentication session for a pending redirect action
      GET
  • Accounts
    • Create a new account
      POST
    • List accounts
      GET
    • Close an account
      DELETE
    • Update an account
      PATCH
    • Retrieve an account
      GET
    • Retrieve an account's daily payout limit status
      GET
  • API Keys
    • Create an API key
    • List API keys
    • Update an API key
    • Retrieve an API key
    • Revoke an API key
    • Rotate an API key's secret
  • App Setting Values
    • Delete an app setting value
    • Retrieve an app setting value
    • List app setting values
    • Create or update an app setting value
  • Entities
    • Create an entity
    • List entities
    • Close an entity
    • Update an entity
    • Retrieve an entity
    • Set the selected entity
    • Retrieve public metadata for the authenticated entity
    • Create an entity sandbox session
    • Retrieve one of your entities, including your membership
    • List my entities
  • Counterparties
    • Create a counterparty
    • List counterparties
    • Update a counterparty
    • Retrieve a counterparty
  • Maker Checker Approver Groups
    • Create a maker-checker approver group
    • List maker-checker approver groups
    • Deactivate a maker-checker approver group
    • Update a maker-checker approver group
    • Retrieve a maker-checker approver group
  • Bulk Payout Intent Actions
    • Create bulk payout intent actions
    • Retrieve a bulk payout intent action batch
    • Preview bulk payout intent actions
  • Payout Intent Action Retries
    • Retry a failed payout intent action
  • Payout Intent Actions
    • Create a payout intent action
    • List payout intent actions
    • Retrieve a payout intent action
  • Payout Intents
    • Create a payout intent
    • List payout intents
    • Retrieve a payout intent
    • Edit a payout intent
    • Cancel a payout intent's active schedule
    • Edit a payout intent's active schedule
    • Cancel a payout intent
  • Virtual Cards
    • Create a virtual card
    • List virtual cards
    • Update a virtual card
    • Retrieve a virtual card
  • Maker Checker Action Decisions
    • Record a decision on a maker-checker action
  • Maker Checker Actions
    • Retrieve a maker-checker action's status
    • List maker-checker actions
    • Withdraw a maker-checker action
  • Payment Pages
    • Create a payment page
    • List payment pages
    • Delete a payment page
    • Edit a payment page
    • Retrieve a payment page
    • Retrieve a published payment page by slug
  • Invoices
    • Create an invoice
      POST
    • List invoices
      GET
    • Retrieve an invoice
      GET
    • Edit an invoice
      PATCH
    • Retrieve an invoice as a PDF
      GET
    • Download a public invoice as a PDF
      GET
    • Retrieve a public invoice by invoice number
      GET
    • Send a reminder for an invoice
      POST
    • Send or resend an invoice
      POST
  • Entity Data
    • Retrieve the data submission checklist for an entity
    • Submit entity data for KYC requirements
    • List entity data
    • Review and decide on entity data submission
  • Unified Verifs
    • Proxy a DELETE request to the Verification API
    • Proxy a GET request to the Verification API
    • Proxy a PATCH request to the Verification API
    • Forward a POST request to the Verification API
  • Identity Session
    • List identity sessions
    • Complete the MFA step of a pending login session
    • Request a login MFA challenge or one-time-passcode
  • Identity Sessions
    • Terminate all active sessions for an identity
    • Terminate an identity session
  • Entity Sandboxes
    • Create an additional named entity sandbox
    • Delete an entity sandbox
    • Rename an entity sandbox
  • Identity Mfa
    • Passkeys
    • Enroll a new MFA method for the authenticated identity
    • List MFA methods for the authenticated identity
    • Retrieve an identity MFA method
    • Advance or transition the state of an existing MFA method
  • Auth
    • Log in with email and password
    • Register a new identity
    • Request an email verification link
    • Verify an email address
    • Request a password reset
    • Complete a password reset with a one-time token
    • Change the authenticated identity's password
    • Confirm a pending email address change
    • Request a change of the authenticated identity's email address
    • Resend an identity-confirmation email
    • Confirm a phone number change for the current identity
    • Request a phone number change for the current identity
  • Virtual Card Actions
    • Perform an action on a virtual card
  • ACLs
    • List all ACL definitions
  • Account Transfers
    • Create an account transfer
    • List account transfers
    • Retrieve an account transfer
  • ACL Roles
    • List all ACL roles
  • Counterparty Instruments
    • Add a bank account to a counterparty
    • List counterparty instruments
    • Remove a counterparty's bank account
  • Currency Conversion Quotes
    • Create a currency conversion quote
  • Entity Access
    • Change a team member's role on an entity
    • Remove a member's access to an entity
    • List an entity's team members
  • Entity Access Invites
    • Accept an entity access invitation
    • Invite a new member to an entity
    • List entity access invites
    • Revoke an entity access invite
  • Entity Ownership Transfers
    • Transfer ownership of an entity
  • Identity
    • Update the authenticated identity's name
    • Retrieve the authenticated identity
  • Money Action Confirmations
    • Confirm a money-moving action with PIN (and, where required, an authenticator code)
  • Payout Intent Action Returns
    • Record a payout intent action as returned
  • Payout Intent Action Status Logs
    • List a payout intent action's status history
  • Payout Intent Schedule Actions
    • Apply an action to a payout intent's schedule
  • Sandbox
    • Credit test money into an entity's sandbox wallet
    • Reset a shadow entity's sandbox
    • Get or create the sandbox identity for the authenticated identity
    • Provision a sandbox identity and master API key
    • Exchange the sandbox master API key for a login session
    • Fund an entity's test wallet with sandbox test money
  • Transactions
    • Retrieve a transaction
    • List transactions
  • Virtual Card Activity
    • List a virtual card's activity
  • Virtual Card Sessions
    • Create a virtual card viewing session
  • Virtual Card Topups
    • Top up a virtual card
  • Virtual Card Transaction Callbacks
    • Handle an inbound virtual card transaction callback
  • Virtual Card Withdrawals
    • Withdraw funds from a virtual card
  • Schemas
    • ErrorResponse
    • SuccessResponse
    • AccountBalance
    • Account
  1. Invoices

Edit an invoice

PATCH
/invoices/{id}
Updates an existing invoice belonging to the authenticated entity. This endpoint supports two mutually exclusive kinds of edit in a single request: (1) a content edit — changing description, due_date, recipient, line_items, applicable_charges, tranches, client_meta, or customisation_meta — which is only allowed while the invoice is still in draft status, or (2) a status transition — changing status to a value allowed from the invoice's current status. A single request cannot combine a status change with any content field; doing so returns a 400 error. When line_items, applicable_charges, or tranches are supplied, all monetary totals (total_amount, total_deductible_charges, total_additional_charges) and per-item amount/resolved_amount values are recomputed server-side from scratch — you cannot set these derived amounts directly. Transitioning status to issued also stamps issued_at with the current time. Transitioning to void or cancelled is blocked once any payment has been received on the invoice (payment_status is no longer unpaid).

Request

Authorization
JWT Bearer
Add the parameter
Authorization
to Headers
Example:
Authorization: ********************
or
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Path Params

Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
The invoice was updated successfully. The response reflects the fully recomputed invoice, including any recalculated totals if line_items, applicable_charges, or tranches were supplied.
Bodyapplication/json

🟠400
🟠401
🟠404
Request Request Example
Shell
JavaScript
Java
Swift
cURL
curl --location --request PATCH '/invoices/01J3KQZM0000000000000000AB' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "status": "issued"
}'
Response Response Example
200 - Success
{
    "message": "Invoice updated successfully",
    "status": "success",
    "data": {
        "id": "01J3KQZM0000000000000000AB",
        "entity_id": "01J3KQ0000000000000000ENTT",
        "account_id": "01J3KQABC0000000000000000X",
        "invoice_number": "INV-000123",
        "currency": "NGN",
        "description": "Consulting services rendered for Q3 2026",
        "due_date": 1795564800000,
        "status": "issued",
        "issued_at": 1754388720000,
        "fully_paid_at": null,
        "payment_status": "unpaid",
        "payment_intent_id": null,
        "recipient": {
            "name": "Ada Lovelace",
            "email": "ada@example.com",
            "mobile": "+2348012345678",
            "address": {
                "line_one": "12 Adeola Odeku Street",
                "line_two": "Suite 4B",
                "city": "Lagos",
                "state": "Lagos State",
                "country": "Nigeria",
                "code": "106104",
                "code_type": "postal"
            }
        },
        "line_items": [
            {
                "id": "01J3KQXYZ0000000000000LI01",
                "name": "Website redesign",
                "description": null,
                "unit_amount": 250000,
                "quantity": 2,
                "amount": 500000
            }
        ],
        "applicable_charges": [
            {
                "category": "tax",
                "charge_name": "VAT",
                "description": null,
                "value": 7.5,
                "value_type": "percentage",
                "application_type": "additional",
                "resolved_amount": 37500,
                "basis": "subtotal",
                "sequence": 1
            }
        ],
        "tranches": [
            {
                "id": "01J3KQXYZ0000000000000TR01",
                "name": "Deposit",
                "description": null,
                "value": 50,
                "value_type": "percentage",
                "due_date": 1793059200000,
                "resolved_amount": 268750,
                "status": "pending"
            },
            {
                "id": "01J3KQXYZ0000000000000TR02",
                "name": "Balance",
                "description": null,
                "value": 50,
                "value_type": "percentage",
                "due_date": 1795564800000,
                "resolved_amount": 268750,
                "status": "pending"
            }
        ],
        "client_meta": {
            "order_ref": "ORD-2026-0042"
        },
        "customisation_meta": {
            "theme_color": "#1a73e8"
        },
        "total_amount": 537500,
        "total_deductible_charges": 0,
        "total_additional_charges": 37500,
        "created": 1754388720000,
        "updated": 1754392100000
    }
}
Modified at 2026-09-18 00:31:05
Previous
Retrieve an invoice
Next
Retrieve an invoice as a PDF
Built with