pagarme-go é um SDK para a API do Pagar.me escrito em Go.
Você pode acessar a documentação oficial do Pagar.me acessando esse link.
Utilize o go get
para obter o SDK e adiciona-lo a seu GOPATH.
go get github.com/isfonzar/pagarme-go
Para atualizar o SDK, utilize go get -u
para obter a última versão.
go get -u github.com/isfonzar/pagarme-go
Para instanciar um novo Client, basta fazer o seguinte:
package main
import (
"net/http"
"github.com/isfonzar/pagarme-go/pkg/client"
)
func main () {
client := *client.NewClient(http.Client{}, "SUA_CHAVE_DE_API", nil)
}
- Se necessário, é possível definir headers http customizados para os requests. Para isso basta informá-los durante a instanciação do objeto
Client
:
package main
import (
"net/http"
"github.com/isfonzar/pagarme-go/pkg/client"
)
func main () {
headers := &client.CustomHeaders{
"X-PagarMe-User-Agent": "Pagar.me Checkout/2.0.0",
"X-PagarMe-Version": "2017-08-28",
}
client := *client.NewClient(http.Client{}, "SUA_CHAVE_DE_API", headers)
}
E então, você pode poderá utilizar o cliente para fazer requisições ao Pagar.me.
Alguns endpoints ainda nao foram implementados neste SDK (contribuições são bem-vindas)
É possível usar o metodo Send do pacote client para fazer requests para os endpoints ainda não implementados.
package main
import (
"net/http"
"github.com/isfonzar/pagarme-go/pkg/client"
)
func main() {
client := client.NewClient(http.Client{}, "PAGARME_API_KEY", nil)
params := struct{} // Sua struct de request
responseObj := struct{} // Struct de resposta
req, err := client.NewRequest("METODO_HTTP", "URL_DO_ENDPOINT", params)
response := &responseObj{}
if err != nil {
return response, nil, err
}
errorResp, err := c.Send(req, response)
}
Por favor, use o issue tracker para reportar bugs e/ou pedir implementações de features.
Pull-requests são bem vindos. Para ajudar no desenvolvimento, basta fazer:
$ git clone git@github.com:isfonzar/pagarme-go.git
$ cd pagarme-go/
$ export PAGARME_API_KEY=ak_test_su4k3yd0p4g4rm3
$ make tests