1.5.0 • Published 7 months ago

commerce-node v1.5.0

Weekly downloads
-
License
MIT
Repository
github
Last release
7 months ago

commerce-node

The Coinbase Commerce Node SDK provides a convenient way to interact with the Coinbase Commerce API.

Installation

# Using yarn
yarn add commerce-node

# Using npm
npm install commerce-node

Configuration

Create a new SDK instance with your API credentials:

import { CommerceSDK } from 'commerce-node';

const commerce = new CommerceSDK({
  apiKey: 'YOUR_API_KEY', // Required
  baseUrl: 'YOUR_API_URL', // Optional, defaults to https://api.commerce.coinbase.com
  baseRpcUrl: 'RPC_URL', // Optional, needed for payments
});

See SDKConfig for possible configuration parameters.

Usage

Creating and Hydrating a Charge

// Create a new charge
const { data: newCharge } = await commerce.charges.createCharge({
  pricing_type: 'fixed_price',
  local_price: {
    amount: '100.00',
    currency: 'USD',
  },
});

// Hydrate the charge with Web3 data
const { data: hydratedCharge } = await commerce.charges.hydrateCharge(
  newCharge.data.id,
  {
    sender: '0x5770D0616b99E89817A8D9BDe61fddc3A941BdF7',
    chain_id: 1,
  },
);

// Get charge
const { data: charges } = await sdk.charges.getCharges();

See examples folder for a full list.

SDK docs: https://nicommerce.github.io/commerce-node/

Error Handling

The SDK throws SDKError instances for various error cases:

try {
  const { data: charge } = await commerce.charges.createCharge({
    // ... charge details
  });
} catch (error) {
  if (error instanceof SDKError) {
    console.error(`Error type: ${error.type}`);
    console.error(`Message: ${error.message}`);
  }
}

Error types include:

  • AUTHENTICATION: API key issues
  • NETWORK: Network connectivity problems
  • VALIDATION: Invalid request parameters
  • RATE_LIMIT: Too many requests
  • SERVER: Server-side errors
  • UNKNOWN: Unexpected errors

Development

corepack enable
# Install dependencies
yarn install

# Build the SDK
yarn build

# Run tests
yarn test

# Run integration tests
yarn test:integration

Docs

To generate SDK docs:

yarn run docs

License

MIT

Documentation

SKD Docs

SDK docs.

Api Docs

For detailed API documentation, visit the Coinbase Commerce API Reference.

Known Issues

There is a known issue with viem. The temporary workaround is to add the following to your tsconfig.sjon

"skipLibCheck": true
1.5.0

7 months ago

1.4.0

7 months ago

1.3.0

7 months ago

1.2.0

7 months ago

1.1.0

7 months ago

1.0.1

7 months ago

1.0.0

7 months ago