# OpenNodex

[![Hex version badge](](
[![Build status badge](](
[![Code coverage badge](](

A (very) simple interface to - more to come if this gets wings.

## Installation

The package can be installed by adding `opennodex` to your list of dependencies in `mix.exs`:

def deps do
    {:opennodex, "~> 0.6.0"}

API Documentation is also available at [](

## Configuration

You can set a default api key and alternative request module via the configuration:

config :opennodex,
  request: OpenNodex.Request,
  api_key: "api_key"

## Usage

Create a $99 charge, with callback and success URLs:

```elixir"[your api_key here]")
|> OpenNodex.create_charge(99, %{currency: "USD", callback_url: "", success_url: ""})
Will return an `{:ok, %Charge{id: ...}}` upon success or `{:error, ...}` on failure.

## Testing

A MockRequest module has been supplied, and is interchangeable with the default Request module.  By configuring the request to use the MockRequest module instead, you can test your app without side-effects or external service dependencies.  Also, you can replace the stock request library for your own.

As an example, you can place the following in your config.exs (or `config/test.exs`) in order to override the request module when tests are run.

config :opennodex,
  request: OpenNodex.MockRequest


* Phoenix integration for the callback events.