Skip to content

Instantly share code, notes, and snippets.

@ceelsoin
Created May 9, 2022 17:38
Show Gist options
  • Save ceelsoin/785636376be89bd39dfde16abe20297e to your computer and use it in GitHub Desktop.
Save ceelsoin/785636376be89bd39dfde16abe20297e to your computer and use it in GitHub Desktop.

Setup:

Add before end of body in your public/index.html

    <script type="text/javascript" src="https://js.iugu.com/v2"></script>

Using example:

const iuguService = new IuguService()
const validExpire = iuguService.validateCreditCardExpiration(formState.expireMonth, formState.expireYear
window.Iugu.setAccountID("YOUR_ACCOUNT_ID_HERE");
if(!process.env.REACT_APP_PROD){
window.Iugu.setTestMode(true);
}
window.Iugu.setup();
// https://dev.iugu.com/docs/tokeniza%C3%A7%C3%A3o
export default class IuguService {
provider;
constructor() {
if (!window.Iugu)
alert("Não foi possível acessar o serviço de pagamentos, contate o suporte para mais detalhes");
this.provider = window.Iugu
}
createCreditCardToken(ccnumber, valid_month, valid_year, name, last_name, cvv){
const ccObject = this.provider.CreditCard(ccnumber, valid_month /*MM*/, valid_year /*YYYY*/, name, last_name, cvv);
return new Promise((resolve, reject) => {
this.provider.createPaymentToken(ccObject, function(response) {
if (response.errors) {
reject(response.errors)
} else {
resolve({response, token: response.id})
}
});
})
}
validateCreditCardNumber(ccNumber){
return this.provider.utils.validateCreditCardNumber(ccNumber);
}
validateCreditCardCvv(cvv, brand){
return this.provider.utils.validateCVV(cvv, brand)
}
validateCreditCardExpiration(month, year){
return this.provider.utils.validateExpiration(month, year); //(MM, YYYY)
}
validateCreditCardExpirationByString(exp_string){
return this.provider.utils.validateExpirationString(exp_string); // (MM/YYYY)
}
getBrandByCreditCardNumber(ccNumber){
return this.provider.utils.getBrandByCreditCardNumber(ccNumber); // (MM/YYYY)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment