Giter Site home page Giter Site logo

crossriver's Introduction

crossriver

Go interface to the Cross River Bank API

Usage

import (
    "context"
    "os"

    "github.com/anedot/crossriver"
)

func main() {
	client, _ := crossriver.NewClient(
		os.Getenv("CROSSRIVER_CLIENT_ID"),
		os.Getenv("CROSSRIVER_CLIENT_SECRET"),
		os.Getenv("CROSSRIVER_API_BASE"),
		os.Getenv("CROSSRIVER_PARTNER_ID"),
	)

	client.SetLog(os.Stdout)

	ctx := context.Background()
	client.GetToken(ctx)
}

ACH

Get ACH Payment

client.GetAchPayment(ctx, paymentId)

Create ACH Payment

payment := crossriver.Payment{
    AccountNumber: "2714035231",
    Receiver: crossriver.BankAccount{
        RoutingNumber:  "021000021",
        AccountNumber:  "456789000",
        AccountType:    "Checking",
        Name:           "Bob Smith",
        Identification: "XYZ123",
    },
    SecCode:         "WEB",
    Description:     "Payment",
    TransactionType: "Push",
    Amount:          10000,
    ServiceType:     "SameDay",
}

client.CreateAchPayment(ctx, payment)

Get ACH Batch

client.GetAchBatch(ctx, batchId)

Create ACH Batch

payments := []Payment{
    {
        AccountNumber: "1234567890",
        Receiver: Receiver{
            RoutingNumber:  "021000021",
            AccountNumber:  "456789000",
            AccountType:    "Checking",
            Name:           "Bob Smith",
            Identification: "XYZ123",
        },
        SecCode:         "PPD",
        Description:     "Payment",
        TransactionType: "Push",
        Amount:          10000,
        ServiceType:     "Standard",
    },
    {
        AccountNumber: "1234567890",
        Receiver: Receiver{
            RoutingNumber:  "021000021",
            AccountNumber:  "123787777",
            AccountType:    "Checking",
            Name:           "Alice Smith",
            Identification: "ABC456",
        },
        SecCode:         "PPD",
        Description:     "Payment",
        TransactionType: "Push",
        Amount:          20000,
        ServiceType:     "Standard",
    },
}

client.CreateAchBatch(ctx, payments)

Webhooks

Create Webhook

webhook := crossriver.Webhook{
    EventName:    "string",
    CallbackUrl:  "string",
    AuthUsername: "string",
    AuthPassword: "string",
    Type:         "Push",
    Format:       "Basic",
}

client.CreateWebhook(ctx, webhook)

crossriver's People

Contributors

nikkypx avatar

Watchers

Tyler Constantin avatar Matt Eastman avatar  avatar Ryan Kuenneke avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.